aboutsummaryrefslogtreecommitdiffstats
path: root/usr
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 /usr
parentipc/sem.c: optimize update_queue() for bulk wakeup calls (diff)
downloadlinux-dev-0a2b9d4c79671b05956806ede5d054e03ae56280.tar.xz
linux-dev-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 'usr')
0 files changed, 0 insertions, 0 deletions