All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Roger Pau Monné" <roger.pau@citrix.com>
To: David Woodhouse <dwmw2@infradead.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
	Willi Junga <xenproject@ymy.be>
Subject: Re: [EXTERNAL] [PATCH] x86/io-apic: fix directed EOI when using AMd-Vi interrupt remapping
Date: Mon, 21 Oct 2024 16:25:45 +0200	[thread overview]
Message-ID: <ZxZkaTzN4d4E-__H@macbook.local> (raw)
In-Reply-To: <9d988ea013f294356bda62253ad43cd24c2048e9.camel@infradead.org>

On Mon, Oct 21, 2024 at 01:02:31PM +0100, David Woodhouse wrote:
> On Mon, 2024-10-21 at 12:53 +0100, Andrew Cooper wrote:
> > 
> > > I don't quite follow how you need a sentinel value. How could you ever
> > > *not* know it, given that you have to write it to the RTE?
> > > 
> > > (And you should *also* just use the pin# like Linux does, as I said).
> > 
> > Because Xen is insane and, for non-x2APIC cases, sets the system up
> > normally and the turns the IOMMU on late.
> > 
> > This really does need deleting, and everything merging into the early path.
> 
> Don't you still have to mask the interrupts when enabling the IOMMU and
> then re-enable them by writing the new values to the RTE once remapping
> is turned on? So at any given moment, surely it's still the case that
> you know what was written to the RTE?
> 
> But OK, i don't really want to know... :)

It's possible that __io_apic_eoi() gets called before the EOI handler
array is allocated, as part of clear_IO_APIC_pin() that is done ahead
setup_IO_APIC() (so with apic_pin_eoi == NULL).

Whether Xen can get into __io_apic_eoi() with the EOI handler array
allocated but some entries not initialized, it's not clear to me.
However I prefer to act on the safe side and allow the fallback of
fetching the field from the RTE itself.  This is a swamp I don't want
to drain right now (as I'm busy with other stuff).

Thanks, Roger.


  reply	other threads:[~2024-10-21 14:26 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-18  8:08 [PATCH] x86/io-apic: fix directed EOI when using AMd-Vi interrupt remapping Roger Pau Monne
2024-10-19  3:23 ` Marek Marczykowski-Górecki
2024-10-21 11:43   ` Woodhouse, David
2024-11-02  3:54     ` marmarek
2024-10-21  9:55 ` Alejandro Vallejo
2024-10-21 10:07   ` Andrew Cooper
2024-10-21 10:49   ` Roger Pau Monné
2024-10-21 11:32   ` David Woodhouse
2024-10-21 12:18     ` Alejandro Vallejo
2024-10-21  9:56 ` Alejandro Vallejo
2024-10-21 11:10 ` Andrew Cooper
2024-10-21 11:38   ` Andrew Cooper
2024-10-21 11:49     ` [EXTERNAL] " David Woodhouse
2024-10-21 11:53       ` Andrew Cooper
2024-10-21 12:02         ` David Woodhouse
2024-10-21 14:25           ` Roger Pau Monné [this message]
2024-10-21 14:03     ` Roger Pau Monné
2024-10-21 17:00     ` Roger Pau Monné
2024-10-21 17:21       ` Andrew Cooper
2024-10-21 11:57   ` Roger Pau Monné
2024-10-21 12:33     ` Andrew Cooper
2024-10-28 11:02       ` Jan Beulich
2024-10-28 11:05   ` Jan Beulich
2024-10-29 15:56     ` Jan Beulich
2024-10-21 11:34 ` David Woodhouse
2024-10-21 14:06   ` Roger Pau Monné
2024-10-21 14:51     ` Andrew Cooper
2024-10-21 14:54       ` David Woodhouse
2024-10-21 15:00         ` Roger Pau Monné
2024-10-21 15:03       ` Alejandro Vallejo
2024-10-21 15:08         ` 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=ZxZkaTzN4d4E-__H@macbook.local \
    --to=roger.pau@citrix.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=dwmw2@infradead.org \
    --cc=jbeulich@suse.com \
    --cc=xen-devel@lists.xenproject.org \
    --cc=xenproject@ymy.be \
    /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.