diff options
| author | 2008-06-16 11:28:04 +0200 | |
|---|---|---|
| committer | 2008-06-16 11:28:04 +0200 | |
| commit | 7aaaec38fcd9ef3172e69f8c19f20113830a8498 (patch) | |
| tree | b12a1c359ad53ae10601f77b3438bb27c3c8f337 /kernel/stop_machine.c | |
| parent | x86: untangle pci dependencies (diff) | |
| parent | Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 (diff) | |
| download | linux-dev-7aaaec38fcd9ef3172e69f8c19f20113830a8498.tar.xz linux-dev-7aaaec38fcd9ef3172e69f8c19f20113830a8498.zip | |
Merge branch 'linus' into x86/kconfig
Diffstat (limited to 'kernel/stop_machine.c')
| -rw-r--r-- | kernel/stop_machine.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/kernel/stop_machine.c b/kernel/stop_machine.c index 0101aeef7ed7..b7350bbfb076 100644 --- a/kernel/stop_machine.c +++ b/kernel/stop_machine.c @@ -62,8 +62,7 @@ static int stopmachine(void *cpu) * help our sisters onto their CPUs. */ if (!prepared && !irqs_disabled) yield(); - else - cpu_relax(); + cpu_relax(); } /* Ack: we are exiting. */ @@ -106,8 +105,10 @@ static int stop_machine(void) } /* Wait for them all to come to life. */ - while (atomic_read(&stopmachine_thread_ack) != stopmachine_num_threads) + while (atomic_read(&stopmachine_thread_ack) != stopmachine_num_threads) { yield(); + cpu_relax(); + } /* If some failed, kill them all. */ if (ret < 0) { |
