From: Yuanhan Liu Date: Fri, 8 May 2015 08:19:05 +0000 (+1000) Subject: wait: introduce wait_event_exclusive_cmd X-Git-Tag: omap-for-v4.2/fixes-rc1^2~71^2~7 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9f3520c3115b451ac1301779fc3c769d94907a70;p=pandora-kernel.git wait: introduce wait_event_exclusive_cmd It's just a variant of wait_event_cmd(), with exclusive flag being set. For cases like RAID5, which puts many processes to sleep until 1/4 resources are free, a wake_up wakes up all processes to run, but there is one process being able to get the resource as it's protected by a spin lock. That ends up introducing heavy lock contentions, and hurts performance badly. Here introduce wait_event_exclusive_cmd to relieve the lock contention naturally by letting wake_up just wake up one process. Cc: Ingo Molnar Cc: Peter Zijlstra v2: its assumed that wait*() and __wait*() have the same arguments - peterz Acked-by: Peter Zijlstra (Intel) Signed-off-by: Yuanhan Liu Signed-off-by: NeilBrown --- Reading git-diff-tree failed