• Ingo Molnar's avatar
    sched/all: Change all BUG_ON() instances in the scheduler to WARN_ON_ONCE() · 09348d75
    Ingo Molnar authored
    There's no good reason to crash a user's system with a BUG_ON(),
    chances are high that they'll never even see the crash message on
    Xorg, and it won't make it into the syslog either.
    
    By using a WARN_ON_ONCE() we at least give the user a chance to report
    any bugs triggered here - instead of getting silent hangs.
    
    None of these WARN_ON_ONCE()s are supposed to trigger, ever - so we ignore
    cases where a NULL check is done via a BUG_ON() and we let a NULL
    pointer through after a WARN_ON_ONCE().
    
    There's one exception: WARN_ON_ONCE() arguments with side-effects,
    such as locking - in this case we use the return value of the
    WARN_ON_ONCE(), such as in:
    
     -       BUG_ON(!lock_task_sighand(p, &flags));
     +       if (WARN_ON_ONCE(!lock_task_sighand(p, &flags)))
     +               return;
    Suggested-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
    Link: https://lore.kernel.org/r/YvSsKcAXISmshtHo@gmail.com
    09348d75
autogroup.c 6.95 KB