[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5085A9A8.5020004@zytor.com>
Date: Mon, 22 Oct 2012 13:16:40 -0700
From: "H. Peter Anvin" <hpa@...or.com>
To: "Eric W. Biederman" <ebiederm@...ssion.com>
CC: HATAYAMA Daisuke <d.hatayama@...fujitsu.com>,
linux-kernel@...r.kernel.org, kexec@...ts.infradead.org,
x86@...nel.org, mingo@...e.hu, tglx@...utronix.de,
len.brown@...el.com, fenghua.yu@...el.com, vgoyal@...hat.com,
grant.likely@...retlab.ca, rob.herring@...xeda.com
Subject: Re: [PATCH v1 2/2] x86, apic: Disable BSP if boot cpu is AP
On 10/22/2012 01:04 PM, Eric W. Biederman wrote:
> HATAYAMA Daisuke <d.hatayama@...fujitsu.com> writes:
>
>> We disable BSP if boot cpu is AP.
>>
>> INIT-INIT-SIPI sequence, a protocal to initiate AP, cannot be used for
>> BSP since it causes BSP jump to BIOS init code; typical visible
>> behaviour is hang or immediate reset, depending on the BIOS init code.
>>
>> INIT can be used to reset AP in a fatal system error state as
>> described in MP spec 3.7.3 Processor-specific INIT. In contrast, there
>> is no processor-specific INIT for BSP to initilize from a fatal system
>> error. It might be possible to do so by NMI plus any hand-crafted
>> reset code that is carefully designed, but at least I have no idea in
>> this direction now.
>
> Has anyone looked at clearing bit 8 of the IA32_APIC_BASE_MSR (0x1B) on
> the bootstrap processor? Bit 8 being the bit that indicates we are a
> bootstrap processor.
>
> If we can clear that bit INIT will always place the processor in
> wait-for-startup-ipi mode and we won't have this problem.
>
> That would also solve the hotunplug the bootstrap processor without
> using an NMI as well.
>
IIRC Fenghua experimented with that and it didn't work. Not all BIOSes
use that bit to determine BSP-ness.
-hpa
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists