[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] pv_ops dom0 kernel failure with ata_piix / irq problems
On Mon, Feb 02, 2009 at 10:11:13PM +0200, Pasi Kärkkäinen wrote: > On Mon, Feb 02, 2009 at 09:22:17PM +0200, Pasi Kärkkäinen wrote: > > On Mon, Feb 02, 2009 at 10:42:30AM +0200, Pasi Kärkkäinen wrote: > > > On Fri, Jan 30, 2009 at 10:50:51AM -0800, Jeremy Fitzhardinge wrote: > > > > Ian Campbell wrote: > > > > >On Fri, 2009-01-30 at 18:12 +0000, Ian Campbell wrote: > > > > > > > > > >>Possibly the correct fix might be to use xen_register_gsi() here > > > > >>instead of xen_allocate_pirq() and get rid of the special case for IRQ > > > > >>14 and 15 in xen_pci_pirq_enable(). Maybe only 14 and 15 need this > > > > >>special treatment. > > > > >> > > > > > > > > > >FWIW this also Works For Me. > > > > > > > > > > > > > OK. I'd noticed that the native code just sets up all the legacy > > > > interrupts at once. I guess we should follow the lead to avoid these > > > > kinds of init order problems. > > > > > > > > > > OK. > > > > > > I've been busy, and haven't yet had time to try the patch. > > > > > > Hopefully I can try it later today! > > > > > > > And now I tried the latest bits. > > > > I also applied Ian's legacy irq fix/patch. > > > > bootlog: > > http://pasik.reaktio.net/xen/pv_ops-dom0-debug/pv_ops-dom0-bootlog-8-xen331-linux-2.6.29-rc3.txt > > > > Now my (IDE) disk is detected, but it ata_piix still seems to fail.. > > > > I guess I'll compile new kernel again with libata debug enabled.. > > > > I enabled the following in include/linux/libata.h: > > #define ATA_DEBUG > #define ATA_VERBOSE_DEBUG > #define ATA_IRQ_TRAP > > And here's dom0 bootlog with those debugging options enabled: > http://pasik.reaktio.net/xen/pv_ops-dom0-debug/pv_ops-dom0-bootlog-9-xen331-linux-2.6.29-rc3-atadebug.txt > > Is there something you'd like me to try/test? > Hmm.. I was using this patch, which looks different from what was committed to the patches.hg repository 2 hours ago.. --- a/arch/x86/xen/pci.c Fri Jan 30 17:39:54 2009 +0000 +++ b/arch/x86/xen/pci.c Fri Jan 30 18:16:34 2009 +0000 @@ -75,15 +75,6 @@ printk(KERN_INFO "xen: PCI device %s pin %d -> irq %d\n", pci_name(dev), dev->pin, irq); - } else if (((dev->class >> 8) == PCI_CLASS_STORAGE_IDE) && - (dev->class & 0x05) == 0) { - /* Legacy IDE devices have hard-coded irq 14/15 */ - printk(KERN_INFO "xen: %s: legacy IDE\n", pci_name(dev)); - - xen_register_gsi(14, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW); - xen_register_gsi(15, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW); - - rc = 0; } else { printk(KERN_INFO "xen: irq enable for %s failed: rc=%d pin=%d irq=%d\n", pci_name(dev), rc, dev->pin, dev->irq); @@ -133,4 +124,6 @@ /* Blerk. */ acpi_gbl_FADT.sci_interrupt = irq; #endif + xen_register_gsi(14, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW); + xen_register_gsi(15, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW); } -- Pasi _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |