• Linus Torvalds's avatar
    Add new 'cond_resched_bkl()' helper function · c3921ab7
    Linus Torvalds authored
    It acts exactly like a regular 'cond_resched()', but will not get
    optimized away when CONFIG_PREEMPT is set.
    
    Normal kernel code is already preemptable in the presense of
    CONFIG_PREEMPT, so cond_resched() is optimized away (see commit
    02b67cc3 "sched: do not do
    cond_resched() when CONFIG_PREEMPT").
    
    But when wanting to conditionally reschedule while holding a lock, you
    need to use "cond_sched_lock(lock)", and the new function is the BKL
    equivalent of that.
    
    Also make fs/locks.c use it.
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    c3921ab7
locks.c 57.7 KB