[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] PCI passthrough w/ shared IRQ in xen/master
xen-devel-bounces@xxxxxxxxxxxxxxxxxxx wrote on 02/19/2010 12:49:40 PM: > xen-devel-bounces@xxxxxxxxxxxxxxxxxxx wrote on 02/19/2010 12:07:08 PM: > > > On Fri, Feb 19, 2010 at 10:56:08AM -0500, Michael D Labriola wrote: > > > I cannot pass a PCI card w/ a shared IRQ to a domU. > > > > > > If my PCI card is in a different slot, and gets a different IRQ, it > works. > > > But in this one particular slot, it gets an IRQ that's shared with a > > > bunch of other bits of gear (USB, firewire, and ATA controller). With > the > > > shared IRQ, not only can I not pass the card to my domU, my dom0 > freaks > > > and dies as well... > > > > > > Both my dom0 and domU are using the latest xen/master pv_ops kernel > and > > > I'm using Xen 3.4.2 (for now). My domU is a pv domain. > > > > There is a missing patch that I haven't pushed in the pcifront branch: > > > > diff --git a/arch/x86/pci/xen.c b/arch/x86/pci/xen.c > > index e138053..923de2e 100644 > > --- a/arch/x86/pci/xen.c > > +++ b/arch/x86/pci/xen.c > > @@ -25,7 +25,7 @@ static int xen_pcifront_enable_irq(struct pci_dev > *dev) > > if (dev->irq < 0) > > return -EINVAL; > > > > - rc = xen_allocate_pirq(dev->irq, 0, "pcifront"); > > + rc = xen_allocate_pirq(dev->irq, 1 /* share */, "pcifront"); > > if (rc < 0) { > > dev_warn(&dev->dev, "Xen PCI IRQ: %d, failed to register:%d\n", > > dev->irq, rc); > > > > > > > HA! That's an important one-line diff! Now my ATM card works w/ shared > IRQ on domU. :-) > > Now we just have to get a better fix for dom0 than commenting out the > entire note_interrupt() function... Actually, I just verified that that patch makes the note_interrupt() gutting unnecessary. With just that one line changed, I'm up and running perfectly. -Mike _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |