diff options
author | Kirill Tkhai <[email protected]> | 2014-08-20 13:47:50 +0400 |
---|---|---|
committer | Ingo Molnar <[email protected]> | 2014-08-20 14:53:02 +0200 |
commit | a1e01829796aa7a993e28ffd7fee5c8d525be175 (patch) | |
tree | 9ae2970e5c0dc25972bf3d7663d997ab8808ddad /lib/clz_ctz.c | |
parent | cca26e8009d1939a6a5bf0200d276fa26f03e536 (diff) |
sched: Remove double_rq_lock() from __migrate_task()
Avoid double_rq_lock() and use TASK_ON_RQ_MIGRATING for
__migrate_task(). The advantage is (obviously) not holding two
rq->lock's at the same time and thereby increasing parallelism.
The important point to note is that because we acquire dst->lock
immediately after releasing src->lock the potential wait time of
task_rq_lock() callers on TASK_ON_RQ_MIGRATING is not longer
than it would have been in the double rq lock scenario.
Signed-off-by: Kirill Tkhai <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Paul Turner <[email protected]>
Cc: Oleg Nesterov <[email protected]>
Cc: Steven Rostedt <[email protected]>
Cc: Mike Galbraith <[email protected]>
Cc: Kirill Tkhai <[email protected]>
Cc: Tim Chen <[email protected]>
Cc: Nicolas Pitre <[email protected]>
Cc: Linus Torvalds <[email protected]>
Link: http://lkml.kernel.org/r/1408528070.23412.89.camel@tkhai
Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'lib/clz_ctz.c')
0 files changed, 0 insertions, 0 deletions