On 10/22/2012 01:04 PM, Eric W. Biederman wrote: > HATAYAMA Daisuke <d.hatayama at jp.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