Re: [PATCH 10/14] [VOYAGER] x86: make disabling the apicsfunctional instead of a flag

From: Cyrill Gorcunov
Date: Tue Apr 14 2009 - 13:44:47 EST


[Cyrill Gorcunov - Tue, Apr 14, 2009 at 09:09:42PM +0400]
...
| | diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c
| | index f9e830e..aa96dbe 100644
| | --- a/arch/x86/kernel/apic/apic.c
| | +++ b/arch/x86/kernel/apic/apic.c
| | @@ -1539,6 +1539,9 @@ void __init early_init_lapic_mapping(void)
| | */
| | void __init init_apic_mappings(void)
| | {
| | + if (disable_apic)
| | + return;
| | +
|
| No, we shouldn't do that without additional
| code review (otherwise we will loose mapping for fake apic page).
| And I suspect we get NULL deref on reboot procedure
| if kernel was compiled _with_ SMP support but APIC disabled
| by kernel option. hmm, can't find this reference in LKML.
| I was telling Ingo about my suspicious on smp operations
| when APIC is disabled by option and we're safe _only_ 'cause
| we have fake mapping page reserved. For example call of
| smp_send_stop() in kernel/panic.c if kernel was compiled _with_ SMP
| support and then APIC disabled by kernel option.
|
| | if (x2apic) {
| | boot_cpu_physical_apicid = read_apic_id();
| | return;
...

Ah, I found that link -- http://lkml.org/lkml/2009/4/12/139
I've promised to take a look, unfortunately out of time now.
Maybe a bit later.

Cyrill
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/