Yang, Sheng wrote:
Please refer to my another patch comment. Basicly, AP is running HLT in 0x10038, but it can exit due to some reason, here QEmu want to raise it up . But after AP exit from HLT, it can't return to it because the code was overrided by grub and no HLT loop there. Then AP had gone away...
Thank you for pointing me to "[PATCH] KVM: Fix QEmu interrupted HLT emulation". You wrote there: "Though I also sent a patch for BIOS, it's necessary to get correct behavior here." Would i be correct saying the problem is kvm/qemu only and with that patch applied the bios fix is not needed? If you still want to change the bios code i would suggest jumping to the original smp_ap_boot_code location in rombios32.bin which should not get overwritten. The following patch is based on the bochs version. - Sebastian --- rombios32start.orig 2008-08-02 19:37:34.000000000 +0200 +++ rombios32start.S 2008-08-02 20:19:15.000000000 +0200 @@ -40,9 +40,11 @@ .code16 smp_ap_boot_code_start: + cli xor %ax, %ax mov %ax, %ds lock incw CPU_COUNT_ADDR + ljmp $0xe000, $(1f-_start) 1: hlt jmp 1b -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html