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

Reply via email to