aboutsummaryrefslogtreecommitdiff
path: root/arch/x86/kernel
diff options
context:
space:
mode:
authorYinghai Lu2008-08-19 20:50:50 -0700
committerIngo Molnar2008-10-16 16:52:57 +0200
commitffd5aae7817fba22c5c3e304a31c44fa0a4e9a97 (patch)
treeb989be1931c3bb57498d6580f10ede1d81c87dc3 /arch/x86/kernel
parent29ccbbf232c035b8c7ff0c5060fbe30a66ed9b99 (diff)
x86: print local APIC of APs one by one
instead of print that of all APs at the time Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel')
-rw-r--r--arch/x86/kernel/io_apic.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/x86/kernel/io_apic.c b/arch/x86/kernel/io_apic.c
index 5de2d38812aa..bf0e66d73030 100644
--- a/arch/x86/kernel/io_apic.c
+++ b/arch/x86/kernel/io_apic.c
@@ -1777,7 +1777,12 @@ __apicdebuginit(void) print_local_APIC(void *dummy)
__apicdebuginit(void) print_all_local_APICs(void)
{
- on_each_cpu(print_local_APIC, NULL, 1);
+ int cpu;
+
+ preempt_disable();
+ for_each_online_cpu(cpu)
+ smp_call_function_single(cpu, print_local_APIC, NULL, 1);
+ preempt_enable();
}
__apicdebuginit(void) print_PIC(void)