ipc/sem.c: optimize if semops fail
authorManfred Spraul <manfred@colorfullife.com>
Wed, 16 Dec 2009 00:47:31 +0000 (16:47 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 16 Dec 2009 15:20:09 +0000 (07:20 -0800)
commitb6e90822e77cd476c18410f7003197d466e36ac6
tree2ff18df8c024ae92e7e8912186c34b10b4b6f4bd
parentd4212093dca95c1f52197017d969cc66d5d962aa
ipc/sem.c: optimize if semops fail

Reduce the amount of scanning of the list of pending semaphore operations:
If try_atomic_semop failed, then no changes were applied.  Thus no need to
restart.

Additionally, this patch correct an incorrect comment: It's possible to
wait for arbitrary semaphore values (do a dec by <x>, wait-for-zero, inc
by <x> in one atomic operation)

Both changes are from Nick Piggin, the patch is the result of a different
split of the individual changes.

Signed-off-by: Manfred Spraul <manfred@colorfullife.com>
Cc: Nick Piggin <npiggin@suse.de>
Cc: Pierre Peiffer <peifferp@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
ipc/sem.c