[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 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.

--- 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);
 }



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.