sched: Simplify mutex_spin_on_owner()
authorThomas Gleixner <tglx@linutronix.de>
Fri, 10 Jun 2011 13:08:55 +0000 (15:08 +0200)
committerIngo Molnar <mingo@elte.hu>
Fri, 1 Jul 2011 08:39:07 +0000 (10:39 +0200)
commit307bf9803f25a8a3f53c1012110fb74e2f893eb0
tree72146cbf22ea0e7d36a0734cca9d46291c40ca89
parent2a46dae38087e62dd5fb08a6dadf1407717ed13c
sched: Simplify mutex_spin_on_owner()

It does not make sense to rcu_read_lock/unlock() in every loop
iteration while spinning on the mutex.

Move the rcu protection outside the loop. Also simplify the
return path to always check for lock->owner == NULL which
meets the requirements of both owner changed and need_resched()
caused loop exits.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Link: http://lkml.kernel.org/r/alpine.LFD.2.02.1106101458350.11814@ionos
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/sched.c