diff options
author | Tiejun Chen <tiejun.chen@windriver.com> | 2013-11-07 02:06:07 (GMT) |
---|---|---|
committer | Scott Wood <scottwood@freescale.com> | 2015-02-13 22:21:04 (GMT) |
commit | 9b7074763f5aca78149f1ba7b13cc68a7da3966d (patch) | |
tree | bf15b7281a343e471fda519ad76306dd81ce4451 /block/blk-timeout.c | |
parent | 0464cead458c293d97265fa212a0b064bd3fa19c (diff) | |
download | linux-fsl-qoriq-9b7074763f5aca78149f1ba7b13cc68a7da3966d.tar.xz |
cpu_down: move migrate_enable() back
Commit 08c1ab68, "hotplug-use-migrate-disable.patch", intends to
use migrate_enable()/migrate_disable() to replace that combination
of preempt_enable() and preempt_disable(), but actually in
!CONFIG_PREEMPT_RT_FULL case, migrate_enable()/migrate_disable()
are still equal to preempt_enable()/preempt_disable(). So that
followed cpu_hotplug_begin()/cpu_unplug_begin(cpu) would go schedule()
to trigger schedule_debug() like this:
_cpu_down()
|
+ migrate_disable() = preempt_disable()
|
+ cpu_hotplug_begin() or cpu_unplug_begin()
|
+ schedule()
|
+ __schedule()
|
+ preempt_disable();
|
+ __schedule_bug() is true!
So we should move migrate_enable() as the original scheme.
Cc: stable-rt@vger.kernel.org
Signed-off-by: Tiejun Chen <tiejun.chen@windriver.com>
Diffstat (limited to 'block/blk-timeout.c')
0 files changed, 0 insertions, 0 deletions