Am 23.07.2012 15:22, schrieb Igor Mammedov: > MP initialization protocol differs between cpu families, and for P6 and > onward models it is up to CPU to decide if it will be BSP using this > protocol, so try to model this. However there is no point in implementing > MP initialization protocol in qemu. Thus first CPU is always marked as BSP. > > This patch: > - moves decision to designate BSP from board into cpu, making cpu > self-sufficient in this regard. Later it will allow to cleanup hw/pc.c > and remove cpu_reset and wrappers from there. > - stores flag that CPU is BSP in IA32_APIC_BASE to model behavior > described in Inted SDM vol 3a part 1 chapter 8.4.1 > - uses MSR_IA32_APICBASE_BSP flag in apic_base for checking if cpu is BSP > > patch is based on Jan Kiszka's proposal: > http://thread.gmane.org/gmane.comp.emulators.qemu/100806 > > Signed-off-by: Igor Mammedov <imamm...@redhat.com> > > --- > Changelog: > v2: > - fix build for i386-linux-user > spotted-by: Peter Maydell <peter.mayd...@linaro.org> > v3: > - style change requested by Andreas Färber <afaer...@suse.de> > > v4: > - reuse cpu_is_bsp() rather than open code check if apicbase has BSP bit > set > requested by Gleb Natapov <g...@redhat.com> > - hijacked patch [1] to use X86CPU instead of CPUX86State in cpu_is_bsp() > > v5: > - move Changelog under --- > requested by: Peter Maydell <peter.mayd...@linaro.org> > > 1) [PATCH qom-next 06/59] pc: Pass X86CPU to cpu_is_bsp() > SoB: Andreas Färber <afaer...@suse.de> > http://lists.gnu.org/archive/html/qemu-devel/2012-05/msg03185.html
Reviewed-by: Andreas Färber <afaer...@suse.de> I'm fine with this patch, including the squashing of my trivial patch without SoB, but would appreciate someone who knows the APIC (Jan?) to add an explicit Acked-by. Andreas -- SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg