[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-devel] Driver domain - NEW issue: IRQ handling error
> > What I've actually found is that if is disable the disabling of the > > interrupt in kernel/irq/spurious.c, everything works fine. > I still get > > the error messages (I didn't comment them out) about every > > 50.000-100.000 packets but I don't drop a packet and > everything works as > > it should. Now obviously I don't want to keep the disabling irq > > disabled, but I'm at a loss for how to fix this otherwise. > > I think I understand now what's happening: > - since you have devices on IRQ18 in both dom0 and another domain, > all IRQ18 interrupts get delivered to both (for loop in > __do_IRQ_guest in xen/arch/x86/irq.c). > - the ide driver in dom0 will only handle IRQs for the ide controller. > - all e1000 interrupts will be counted as spurious/unhandled. > - if there's hardly any ide interrupts, you can hit the case where > of 100000 interrupts, 99900 were unhandled and this will cause the > interrupt to get disabled. > > We seem to hit the case mentioned in () above __report_bad_irq. Not > disabling the interrupt in that case is the correct thing to do, but > the sharing does certainly have a significant performance impact. Nicely figured -- I was putting this down to ioapic folklore and just hoping it was going to go away with new ioapic code... Shared interrupts across multiple domains are heinous. Ian ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |