[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] cpuidle and un-eoid interrupts at the local apic
On 09/09/13 15:48, Thimo Eichstädt wrote: > Hello Andrew, > > I've disabled MSI on that controller, now it is running with level > triggered IRQs. No crash so far with these settings. > > But what I see are a lot of spurious interrupts for every type of IRQ > on my machine, Here an example: Given the nature of the problem, I am not surprised in the slightest that there are spurious interrupts. > > [root@localhost /]# cat /proc/irq/1276/spurious > count 61007 > unhandled 0 > last_unhandled 36736990 ms > > I can see this for the ethernet irqs, usb, sata and so on. Line level interrupts are shared between multiple pieces of hardware, leading to the possibility that no device driver claims the interrupt (which is when the interrupt is declared as spurious) > > I've already written it into another mail on Sunday: > > >http://lxr.free-electrons.com/source/kernel/irq/manage.c?v=2.6.32: > >1025 if ((irqflags & (IRQF_SHARED|IRQF_DISABLED)) == > >1026 (IRQF_SHARED|IRQF_DISABLED)) { > >1027 pr_warning( > >1028 "IRQ %d/%s: IRQF_DISABLED is not guaranteed on > >shared IRQs\n", > >1029 irq, devname); > >... > >738 * Force MSI interrupts to run with interrupts > >739 * disabled. The multi vector cards can cause stack > >740 * overflows due to nested interrupts when enough of > >741 * them are directed to a core and fire at the same > >742 * time. > >743 */ > >744 if (desc->msi_desc) > >745 new->flags |= IRQF_DISABLED; > > --> When using MSI on the SATA controller the kernel indicates me that > IRQF_SHARED for that interrupt is set, so the MSI is shared ?! I > thought that it is not possible that MSI interrupts are shared. > --> Is that what we see in the kernel oops the stack overflow the > comment in lines 738-742 is talking about ?! Espacially because the > warning in 1028 tells me that IRQF_DISABLED might not be set on shared > interrupts. I suspect that this is a red herring. It looks like a generic error path for both legacy interrupts and msi interrupts. Furthermore, dom0's interrupt handling is rather different under Xen, not least as the event channel mechanism essentially serialises the delivery of interrupts. ~Andrew _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |