• Thomas Gleixner's avatar
    sched: Debug missed preemption checks · 514e0e29
    Thomas Gleixner authored
    Developers use preempt_enable_no_resched() in places where the code
    calls schedule() immediately which is correct. But there are places
    where preempt_enable_no_resched() is not followed by schedule().
    
    Add debug infrastructre to find the offending code. The identified
    correct users are converted to use __preempt_enable_no_resched().
    
    For the ever repeating "preempt_enable_no_resched(); schedule();"
    sequences a onvenience macro preempt_enable_and_schedule() is
    introduced.
    
    Based on a previous patch from Ingo Molnar <mingo@elte.hu>
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    514e0e29
softirq.c 19.6 KB