All of lore.kernel.org
 help / color / mirror / Atom feed
From: Philippe Gerum <rpm@xenomai.org>
To: Jan Kiszka <jan.kiszka@domain.hid>
Cc: xenomai-core <xenomai@xenomai.org>
Subject: Re: [Xenomai-core] BUG on xnintr_attach
Date: Wed, 22 Apr 2009 18:23:04 +0200	[thread overview]
Message-ID: <1240417384.6987.8.camel@domain.hid> (raw)
In-Reply-To: <49EF0CFE.90405@domain.hid>

On Wed, 2009-04-22 at 14:26 +0200, Jan Kiszka wrote:
> Hi all,
> 
> issuing  rtdm_irq_request and, thus, xnintr_attach can trigger a
> "I-pipe: Detected stalled topmost domain, probably caused by a bug." if
> the interrupt type is MSI:
> 
>   [<ffffffff80273cce>] ipipe_check_context+0xe7/0xe9
>   [<ffffffff8049dae9>] _spin_lock_irqsave+0x18/0x54
>   [<ffffffff8037dcc2>] pci_bus_read_config_dword+0x3c/0x87
>   [<ffffffff80387c1d>] read_msi_msg+0x61/0xe1
>   [<ffffffff8021c5b8>] ? assign_irq_vector+0x3e/0x49
>   [<ffffffff8021d7b2>] set_msi_irq_affinity+0x6d/0xc8
>   [<ffffffff8021fa5d>] __ipipe_set_irq_affinity+0x6c/0x77
>   [<ffffffff80274231>] ipipe_set_irq_affinity+0x34/0x3d
>   [<ffffffff8027c572>] xnintr_attach+0xaa/0x11e
> 
> Two option to fix this, but I'm currently undecided which one to go:
>  - harden pci_lock (drivers/pci/access.c) - didn't we applied such a
>    MSI-related workaround before?

This did not work as expected: pathological latency spots. This said,
the vanilla code has evolved since I tried this quick hack months ago,
so it may be worth to look at this option once again.

>  - move xnarch_set_irq_affinity out of intrlock (but couldn't we face
>    even more pci_lock related issues?)
> 

Since upstream decided to use PCI config reads even inside hot paths
when processing MSI interrupts, the only sane way would be to make the
locking used there Adeos-aware, likely virtualizing the interrupt mask.
The way upstream generally deals with MSI is currently a problem for us.

> Jan
> 
-- 
Philippe.




  reply	other threads:[~2009-04-22 16:23 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-22 12:26 [Xenomai-core] BUG on xnintr_attach Jan Kiszka
2009-04-22 16:23 ` Philippe Gerum [this message]
2009-04-22 16:48   ` Jan Kiszka
2009-04-23  7:20     ` Jan Kiszka

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=1240417384.6987.8.camel@domain.hid \
    --to=rpm@xenomai.org \
    --cc=jan.kiszka@domain.hid \
    --cc=xenomai@xenomai.org \
    /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.