• Greg Ungerer's avatar
    [PATCH] m68knommu: fix scheduling and race problems in idle loop · b05a720b
    Greg Ungerer authored
    Re-work the m68knommu specific idle code according to suggestions
    from Nick Piggin <nickpiggin@yahoo.com.au>.
    
    A couple of rules that we need to follow:
    
    1. Preempt should now disabled over idle routines. Should only be enabled
    to call schedule() then disabled again.
    
    3. When cpu_idle finds (need_resched() == 'true'), it should call schedule().
    It should not call schedule() otherwise.
    
    Also fix interrupt locking around the need_resched() and cpu stop state
    so that there is no race condition.
    Signed-off-by: default avatarGreg Ungerer <gerg@snapgear.com>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    b05a720b
process.c 10.8 KB