[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


 


Rackspace

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