From: David Woodhouse <dwmw2@infradead.org>
To: Bernhard Beschow <shentey@gmail.com>,
qemu-devel@nongnu.org, "Michael S. Tsirkin" <mst@redhat.com>
Cc: Thomas Huth <thuth@redhat.com>, Paul Durrant <paul@xen.org>,
Paolo Bonzini <pbonzini@redhat.com>,
Richard Henderson <richard.henderson@linaro.org>,
Eduardo Habkost <eduardo@habkost.net>,
Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
Subject: Re: [PATCH] hw/i386/pc: Fix level interrupt sharing for Xen event channel GSI
Date: Wed, 08 Jan 2025 11:26:57 +0000 [thread overview]
Message-ID: <a7484289fdffd85431bc6b255a59b894bc3e2d6a.camel@infradead.org> (raw)
In-Reply-To: <E60B2E8D-23B5-43E2-8DC5-FDBA30EB40EF@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 1658 bytes --]
On Wed, 2025-01-08 at 09:45 +0000, Bernhard Beschow wrote:
>
>
> Am 7. Januar 2025 16:20:28 UTC schrieb David Woodhouse
> <dwmw2@infradead.org>:
> > On Tue, 2025-01-07 at 11:07 -0500, Michael S. Tsirkin wrote:
> > > On Thu, Dec 19, 2024 at 05:24:11PM +0100, David Woodhouse wrote:
> > > > From: David Woodhouse <dwmw@amazon.co.uk>
> > > >
> > > > The system GSIs are not designed for sharing. One device might
> > > > assert a
> > > > shared interrupt with qemu_set_irq() and another might deassert
> > > > it, and
> > > > the level from the first device is lost.
> > > >
> > > > This could be solved by using a multiplexer which functions as
> > > > an OR
> > > > gate, much like the PCI code already implements for
> > > > pci_set_irq() for
> > > > muxing the INTx lines.
>
> Just curious: Why not use that aporoach? Could
> <https://lore.kernel.org/qemu-devel/20250108092538.11474-5-shentey@gm
> ail.com/>
> help?
That looks very similar to hw/core/or-irq.c which rth pointed out to
me. Is there a reason for both of them existing?
It would be theoretically possible to rework the x86 GSI handling to
use such a thing, yes.
It would be a large yak-shaving task which exceeds the time I currently
have available for a bug fix, but I don't *always* let that stop me.
More to the point though, I *still* wouldn't like the outcome. I still
want us to have a 'resample' callback when the interrupt is
acknowledged in the interrupt controller, to see if any of the inputs
still want the line to be asserted.
That's the only way to handle it efficiently for VFIO INTx and for the
Xen GSI callback anyway.
[-- Attachment #2: smime.p7s --]
[-- Type: application/pkcs7-signature, Size: 5069 bytes --]
next prev parent reply other threads:[~2025-01-08 11:27 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-19 16:24 [PATCH] hw/i386/pc: Fix level interrupt sharing for Xen event channel GSI David Woodhouse
2025-01-06 16:00 ` David Woodhouse
2025-01-07 16:07 ` Michael S. Tsirkin
2025-01-07 16:20 ` David Woodhouse
2025-01-08 9:45 ` Bernhard Beschow
2025-01-08 11:26 ` David Woodhouse [this message]
2025-01-08 14:23 ` Bernhard Beschow
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=a7484289fdffd85431bc6b255a59b894bc3e2d6a.camel@infradead.org \
--to=dwmw2@infradead.org \
--cc=eduardo@habkost.net \
--cc=marcel.apfelbaum@gmail.com \
--cc=mst@redhat.com \
--cc=paul@xen.org \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=shentey@gmail.com \
--cc=thuth@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).