Skip to content
  • Igor Mammedov's avatar
    target-i386: move cpu halted decision into x86_cpu_reset · dd673288
    Igor Mammedov authored
    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: default avatarIgor Mammedov <imammedo@redhat.com>
    Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
    dd673288