Created attachment 336275 [details] HV serial console log Description of problem: I have a guest running RHEL-5 Xen Hypervisor. On Fedora 9 KVM it worked fine (PV guest only of course). After upgrading to Fedora 11 rawhide, it no longer boots. Xen complains: (XEN) ENABLING IO-APIC IRQs (XEN) -> Using new ACK method (XEN) ..MP-BIOS bug: 8254 timer not connected to IO-APIC (XEN) (XEN) **************************************** (XEN) Panic on CPU 0: (XEN) IO-APIC + timer doesn't work! Boot with apic=debug and send a report. Then try booting with the 'noapic' option**************************************** (XEN) (XEN) Reboot in five seconds... Version-Release number of selected component (if applicable): On host: 2.6.29-0.258.rc8.git2.fc11.x86_64 qemu-0.10-0.9.kvm20090310git.fc11.x86_64 In guest kernel-xen-2.6.18-128.el5.x86_64 How reproducible: Always Steps to Reproduce: 1. Install RHEL5 in a guest 2. Switch guest to use kernel-xen kerenl 3. Actual results: Hypervisor fails to boot Expected results: HV boots and can run PV guests Additional info:
NB, booting the RHEL5 Xen Guest Hypervisor with 'noapic' works, but obviously that's undesirable as a real solution
Created attachment 336276 [details] libvir guest config
Created attachment 336277 [details] QEMU stdout log/command line
FYI, adding -no-kvm-irqchip also makes it boot correctly, but this isn't really a supportable solution either.
Marcelo: an ideas?
Does it boot with -no-kvm-pit?
Yes, it also works with -no-kvm-pit.
I think this bug is caused by: http://lists.xensource.com/archives/html/xen-changelog/2006-03/msg00102.html Which effectively disables the PIC initialization for the paravirt kernel's PIT-through-IO_APIC boot check. Recently KVM was changed to reinject timer interrupts only when the previous one has been acked, which is not the case with the above changes in Xen. It will probably be necessary to add an option to control such behavior. Dan, can you please confirm the theory by executing the attached systemtap script with: # stap -g xen-pit-fc11.stp And then start the Xen guest? Thanks
Created attachment 338173 [details] stap script to disable pit irq ack logic stap script to disable pit irq ack logic
Yes that stap script makes it boot successfully.
Hum, I think this has been fixed by commit f1c45dd4a6efcf22119e0cadd3471b86e0ddc767 Author: Avi Kivity <avi> Date: Sun Jan 4 18:06:06 2009 +0200 KVM: Reset PIT irq injection logic when the PIT IRQ is unmasked Which is not part of 2.6.29.
Marcelo has posted some patches to fedora-kernel-list: http://www.redhat.com/archives/fedora-kernel-list/2009-April/msg00005.html
Daniel, Can you please give a try at the following kernel RPM: http://koji.fedoraproject.org/koji/taskinfo?taskID=1288099 Thanks
Yes, this kernel build works for my tests
Thanks Daniel. The patches have been committed to Fedora CVS.
Fixed for F11 by: * Thu Apr 14 2009 Marcelo Tosatti <mtosatti> - kvm fixes for bz#491625