[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 11:55:27 AM: > xen-devel-bounces@xxxxxxxxxxxxxxxxxxx wrote on 02/19/2010 11:26:11 AM: > > > Keir Fraser <keir.fraser@xxxxxxxxxxxxx> wrote on 02/19/2010 11:24:28 AM: > > > > > On 19/02/2010 16:15, "Mark Hurenkamp" <mark.hurenkamp@xxxxxxxxx> > wrote: > > > > > > > When you do passthrough the device which has a shared IRQ, the domU > > will > > > > load the appropriate driver, but Xen refuses to assign the IRQ to > the > > > > domU. > > > > In your case (and mine as well), the driver in domU is not aware > that > > it > > > > has no IRQ, and thus starts generating interupts which are then > caught > > by > > > > Dom0 as spurious interrupts, in my case even causing Dom0 to crash > at > > > > times. > > > > > > Are you sure the domU doesn't get the interrupts as well? Correct > > behaviour > > > in Xen will be to send the interrupt to both dom0 and domU - since Xen > > > can't > > > work out which of the two it properly belongs to (and it could be > both). > > > > > > I would suggest try commenting out the content of the function > > > kernel/irq/spurious.c:note_interrupt(). That will stop dom0 from > > reacting to > > > the 'spurious' irqs that it sees and ignore them instead. See if that > > works > > > for you. > > > > On it. Let you know what happens. > > Commented out the entire contents of note_interrupt(). Only installed the > new kernel on my dom0. That does in fact keep my dom0 from killing my > SATA controller, but my PCI ATM card still doesn't quite work in the domU. > How exactly do I tell if the domU is getting the interrupts? > > The card works well enough for the ATM daemons to set up a PVC, but when I > try to ping the host on the other side I get nothing. Actually, after a > few minutes, I start getting this message: > > ping: sendmsg: No buffer space available Ok, I've attached the serial output from my dom0 w/out any note_interrupt() content, the output of dmesg on my bad domU, and the contents of /proc/interrupts on my bad domU. I also included dmesg and interrupts from a "good" domU. This other domU is running on the same dom0 with the same model PCI ATM card (HE155) in a different PCI slot with a unique IRQ. I'm gonna go verify that the ATM w/ shared IRQ works in dom0... -Mike Attachment:
xen_domU_irq_problems_nospurious.txt Attachment:
domU_bad_dmesg.txt Attachment:
domU_bad_interrupts.txt Attachment:
domU_good_dmesg.txt Attachment:
domU_good_interrupts.txt _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |