diff options
author | David Rientjes <rientjes@google.com> | 2014-02-04 23:55:01 -0800 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2014-02-09 15:15:08 +0100 |
commit | 465822cfc8cb850ba76046965cc7b6fd1f8c3d73 (patch) | |
tree | 4d652719f6dd8864a85f8455381c23cfe6495305 /arch/x86/kernel/smpboot.c | |
parent | d3c63ae1e2e35e4250390c079dc3fb7291347f5c (diff) | |
download | linux-465822cfc8cb850ba76046965cc7b6fd1f8c3d73.tar.bz2 |
x86/apic: Switch wait_for_init_deassert() to a bool flag
Now that there is only a single wait_for_init_deassert()
function, just convert the member of struct apic to a bool to
determine whether we need to wait for init_deassert to become
non-zero.
There are no more callers of default_wait_for_init_deassert(),
so fold it into the caller.
Signed-off-by: David Rientjes <rientjes@google.com>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/alpine.DEB.2.02.1402042354010.7839@chino.kir.corp.google.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/x86/kernel/smpboot.c')
-rw-r--r-- | arch/x86/kernel/smpboot.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c index a32da804252e..c77acc69ecf6 100644 --- a/arch/x86/kernel/smpboot.c +++ b/arch/x86/kernel/smpboot.c @@ -122,8 +122,9 @@ static void smp_callin(void) * Since CPU0 is not wakened up by INIT, it doesn't wait for the IPI. */ cpuid = smp_processor_id(); - if (apic->wait_for_init_deassert && cpuid != 0) - apic->wait_for_init_deassert(&init_deasserted); + if (apic->wait_for_init_deassert && cpuid) + while (!atomic_read(&init_deasserted)) + cpu_relax(); /* * (This works even if the APIC is not enabled.) |