[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-users] Dom0 hangs on boot, CentOS 5 x86_64
I have been trying to get Xen working on an Intel S5000VLC motherboard in x86_64 mode running CentOS 5 (2.6.18 kernel). It boots fine without Xen, but when running Xen I get a hang on boot while it is configuring the PCI devices. I've done some debugging, and it appears that the problem is a HYPERVISOR_physdev_op() call, which never returns. The call at fault is in io_apic_write() in arch/x86_64/kernel/io_apic-xen.c: HYPERVISOR_physdev_op(PHYSDEVOP_apic_write, &apic_op); which is called from io_apic_set_pci_routing() (in the same file): io_apic_write(ioapic, 0x10+2*pin, *(((int *)&entry)+0)); called from mp_register_gsi() in arch/x86_64/kernel/mpparse-xen.c: io_apic_set_pci_routing(ioapic, ioapic_pin, gsi, triggering == ACPI_EDGE_SENSITIVE ? 0 : 1, polarity == ACPI_ACTIVE_HIGH ? 0 : 1); called from acpi_register_gsi() in arch/i386/kernel/acpi/boot-xen.c: plat_gsi = mp_register_gsi(gsi, triggering, polarity);I lost track of the calls at this point, but picked them up again in arch/i386/pci/common.c where pcibios_enable_device() calls: return pcibios_enable_irq(dev); which is called from pci_enable_device_bars() in drivers/pci/pci.c: err = pcibios_enable_device(dev, bars); called from pci_enable_device() in the same file: err = pci_enable_device_bars(dev, (1 << PCI_NUM_RESOURCES) - 1); called from drivers/pci/bus.c: retval = pci_enable_device(dev); The problem also happens under Fedora 7 when running Xen.It looks like something might not be getting initialised, since the xen kernel boots fine if you boot the non-xen kernel first and then reboot without powering off in between. The motherboard is running the latest (2 month old) BIOS, however I've noticed that the stock (non-Xen) Fedora 7 kernel fails to boot unless you specify acpi=off, so presumably the BIOS has some ACPI bugs. Specifying acpi=off doesn't solve the Xen problem though. I'd appreciate any suggestions. I'm relatively happy poking around in the Linux kernel, but since it is a call to the Xen hypervisor which is hanging I'm a bit stumped, having never looked at the Xen sourcecode before. Thank you. -- - Steve xmpp:steve@xxxxxxxxxxx sip:steve@xxxxxxxxxxx http://www.nexusuk.org/ Servatis a periculum, servatis a maleficum - Whisper, Evanescence _______________________________________________ Xen-users mailing list Xen-users@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-users
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |