Gleb Natapov wrote: > On Thu, Mar 04, 2010 at 02:03:54PM +0200, Gleb Natapov wrote: >>> BTW, do real systems allow to hot plug BSP as well? Or how is the case >>> handled when you unplug the BSP and then reboot the box? >>> >> Did you mean hot unplug BSP? OS determines what CPU is BSP by checking >> BSP bit in APIC base register. My guess is that there is some pin on CPU >> which value is mirrored as BSP bit in APIC base register. Board may have >> some logic to check what sockets are populated and chose one of them as >> BSP by pulling its pin up. But this is only guess. >> > Actually this is much more simple: > SDM 8.4.1: > The MP initialization protocol defines two classes of processors: the > bootstrap processor (BSP) and the application processors (APs). Following > a power-up or RESET of an MP system, system hardware dynamically selects > one of the processors on the system bus as the BSP. The remaining > processors are designated as APs. > And by "hardware" they mean CPUs themselves over apic BUS. That should be straightforward, will have a look. I just want to ensure that cpu_is_bsp delivers a valid result all the time. Otherwise we will run into ordering issues again once some new user of this services shows up. Jan
Attachment:
signature.asc
Description: OpenPGP digital signature