Re: [rfc 0/4] x86 - apic dummy ops with cleanups

From: Ingo Molnar
Date: Sun Apr 12 2009 - 14:03:06 EST



* Cyrill Gorcunov <gorcunov@xxxxxxxxx> wrote:

> Thanks, Ingo!
>
> Actually I found one a bit suspicious thing (not sure if it was
> initially designed to behave like that).
>
> Suppose we have SMP compiled kernel and even supported on HW level
> but then we disable apic thru kernel option. And then when system
> startup it should be working fine since we go to uniprocessor
> mode. Then the machine going for reboot and we have:
>
> Starting from arch/x86/kernel/reboot.c
>
> native_machine_shutdown
> smp_send_stop
> smp_ops.smp_send_stop
> native_smp_send_stop
> disable_local_APIC
> apic_write(APIC_SPIV, value);
>
> Since we have reserved APIC memory mapped area (in _anycase_) it
> doesn't cause any problems but was it initially supposed?

i dont think that was supposed so. If the APIC wasnt even enabled
then we shouldnt try to disable it. Note that there are a few
unusual paths to APIC enablement: for example by twiddling the
nmi_watchdog knob in /proc/sys - or in theory through a CPU hotplug
event.

Ingo
--
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/