rwsem: avoid taking wait_lock in rwsem_down_write_failed
authorMichel Lespinasse <walken@google.com>
Tue, 7 May 2013 13:45:56 +0000 (06:45 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 7 May 2013 14:20:16 +0000 (07:20 -0700)
commita7d2c573ae7fad1b2c877d1a1342fa5bb0d6478c
tree1494f94f71a299d32a3584565a538e5ffdef1163
parent5ede972df1cd9294c82e9515949fd2103be81d7b
rwsem: avoid taking wait_lock in rwsem_down_write_failed

In rwsem_down_write_failed(), if there are active locks after we wake up
(i.e.  the lock got stolen from us), skip taking the wait_lock and go
back to sleep immediately.

Signed-off-by: Michel Lespinasse <walken@google.com>
Reviewed-by: Peter Hurley <peter@hurleysoftware.com>
Acked-by: Davidlohr Bueso <davidlohr.bueso@hp.com>
Acked-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
lib/rwsem.c