summaryrefslogtreecommitdiffstats
path: root/include/linux/sem.h
diff options
context:
space:
mode:
authorManfred Spraul <manfred@colorfullife.com>2010-05-26 14:43:41 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2010-05-27 09:12:49 -0700
commit0a2b9d4c79671b05956806ede5d054e03ae56280 (patch)
tree28431a1dc1e21528c0075c7f4ac345bda40ce21b /include/linux/sem.h
parentfd5db42254518fbf241dc454e918598fbe494fa2 (diff)
downloadlinux-stable-0a2b9d4c79671b05956806ede5d054e03ae56280.tar.gz
linux-stable-0a2b9d4c79671b05956806ede5d054e03ae56280.tar.bz2
linux-stable-0a2b9d4c79671b05956806ede5d054e03ae56280.zip
ipc/sem.c: move wake_up_process out of the spinlock section
The wake-up part of semtimedop() consists out of two steps: - the right tasks must be identified. - they must be woken up. Right now, both steps run while the array spinlock is held. This patch reorders the code and moves the actual wake_up_process() behind the point where the spinlock is dropped. The code also moves setting sem->sem_otime to one place: It does not make sense to set the last modify time multiple times. [akpm@linux-foundation.org: repair kerneldoc] [akpm@linux-foundation.org: fix uninitialised retval] Signed-off-by: Manfred Spraul <manfred@colorfullife.com> Cc: Chris Mason <chris.mason@oracle.com> Cc: Zach Brown <zach.brown@oracle.com> Cc: Jens Axboe <jens.axboe@oracle.com> Cc: Nick Piggin <npiggin@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/sem.h')
0 files changed, 0 insertions, 0 deletions