From: Andrew Cooper <andrew.cooper3@citrix.com>
To: "Thimo Eichstädt" <t.eichstaedt@digithi.de>
Cc: "Zhang, Yang Z" <yang.z.zhang@intel.com>,
xen-devel <xen-devel@lists.xenproject.org>,
"Thimo E." <abc@digithi.de>, Keir Fraser <keir@xen.org>,
Jan Beulich <JBeulich@suse.com>
Subject: Re: cpuidle and un-eoid interrupts at the local apic
Date: Mon, 9 Sep 2013 16:12:16 +0100 [thread overview]
Message-ID: <522DE550.6070403@citrix.com> (raw)
In-Reply-To: <522DDFBF.40709@digithi.de>
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
next prev parent reply other threads:[~2013-09-09 15:12 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-31 20:32 cpuidle and un-eoid interrupts at the local apic Andrew Cooper
2013-06-03 14:30 ` Jan Beulich
2013-07-31 8:30 ` Thimo E.
2013-07-31 9:47 ` Andrew Cooper
2013-08-02 22:50 ` Thimo E.
2013-08-02 23:32 ` Andrew Cooper
2013-08-05 12:45 ` Jan Beulich
2013-08-05 14:51 ` Andrew Cooper
2013-08-09 21:27 ` Thimo E.
2013-08-09 21:40 ` Andrew Cooper
2013-08-09 21:44 ` Andrew Cooper
2013-08-11 17:46 ` Thimo E.
2013-08-12 6:02 ` Zhang, Yang Z
2013-08-12 8:49 ` Zhang, Yang Z
2013-08-12 8:57 ` Jan Beulich
2013-08-12 11:52 ` Thimo E
2013-08-12 12:04 ` Andrew Cooper
2013-08-19 15:14 ` Thimo E.
2013-08-20 5:43 ` Thimo Eichstädt
2013-08-20 8:40 ` Jan Beulich
2013-08-20 8:50 ` Zhang, Yang Z
2013-08-23 7:22 ` Thimo Eichstädt
2013-08-23 7:30 ` Zhang, Yang Z
2013-08-27 1:03 ` Zhang, Yang Z
2013-09-04 18:32 ` Thimo E.
2013-09-04 18:55 ` Andrew Cooper
2013-09-04 19:56 ` Thimo E.
2013-09-04 20:54 ` Andrew Cooper
2013-09-05 1:45 ` Zhang, Yang Z
2013-09-05 7:20 ` Thimo E.
2013-09-05 1:15 ` Zhang, Yang Z
2013-09-17 2:09 ` Zhang, Yang Z
2013-09-17 7:39 ` Thimo E.
2013-09-17 7:43 ` Zhang, Yang Z
2013-09-17 21:04 ` Thimo E.
2013-09-18 1:18 ` Zhang, Xiantao
2013-09-18 17:24 ` Thimo E.
2013-09-18 12:06 ` Andrew Cooper
2013-08-12 13:54 ` Thimo E
2013-08-12 14:06 ` Andrew Cooper
2013-08-13 1:43 ` Zhang, Yang Z
2013-08-13 6:39 ` Thimo E.
2013-08-13 11:39 ` Wu, Feng
2013-08-13 12:46 ` Andrew Cooper
2013-08-12 9:10 ` Andrew Cooper
2013-08-12 5:50 ` Zhang, Yang Z
2013-08-12 8:20 ` Jan Beulich
2013-08-12 9:28 ` Andrew Cooper
2013-08-12 10:05 ` Jan Beulich
2013-08-12 10:27 ` Andrew Cooper
2013-08-14 2:53 ` Zhang, Yang Z
2013-08-14 7:51 ` Thimo E.
2013-08-14 9:52 ` Andrew Cooper
2013-09-07 13:27 ` Thimo E.
2013-09-07 17:02 ` Andrew Cooper
2013-09-07 23:37 ` Thimo E.
2013-09-08 9:53 ` Andrew Cooper
2013-09-08 10:24 ` Thimo E.
2013-09-09 13:16 ` Andrew Cooper
2013-09-09 14:48 ` Thimo Eichstädt
2013-09-09 15:12 ` Andrew Cooper [this message]
2013-09-09 7:59 ` Jan Beulich
2013-09-09 12:53 ` Andrew Cooper
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=522DE550.6070403@citrix.com \
--to=andrew.cooper3@citrix.com \
--cc=JBeulich@suse.com \
--cc=abc@digithi.de \
--cc=keir@xen.org \
--cc=t.eichstaedt@digithi.de \
--cc=xen-devel@lists.xenproject.org \
--cc=yang.z.zhang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.