From: Marc Zyngier <maz@kernel.org>
To: Zenghui Yu <yuzenghui@huawei.com>
Cc: <linux-kernel@vger.kernel.org>,
Thomas Gleixner <tglx@linutronix.de>,
Kunkun Jiang <jiangkunkun@huawei.com>,
<wanghaibin.wang@huawei.com>
Subject: Re: [PATCH] irqchip/gic-v4.1: Properly lock VPEs when doing a directLPI invalidation
Date: Mon, 03 Jul 2023 19:54:01 +0100 [thread overview]
Message-ID: <86wmzgx1va.wl-maz@kernel.org> (raw)
In-Reply-To: <b665e102-eba9-cd4f-5b4e-ccbd77444233@huawei.com>
On Thu, 29 Jun 2023 15:52:24 +0100,
Zenghui Yu <yuzenghui@huawei.com> wrote:
>
> Hi Marc,
>
> On 2023/6/17 15:32, Marc Zyngier wrote:
> > We normally rely on the irq_to_cpuid_[un]lock() primitives to make
> > sure nothing will change col->idx while performing a LPI invalidation.
>
> "change col_idx while performing a vLPI invalidation"?
>
> > However, these primitives do not cover VPE doorbells, and we have
> > some open-coded locking for that. Unfortunately, this locking is
> > pretty bogus.
> >
> > Instead, extend the above primitives to cover VPE doorbells and
> > convert the whole thing to it.
> >
> > Fixes: f3a059219bc7 ("irqchip/gic-v4.1: Ensure mutual exclusion between vPE affinity change and RD access")
> > Reported-by: Kunkun Jiang <jiangkunkun@huawei.com>
> > Signed-off-by: Marc Zyngier <maz@kernel.org>
> > Cc: Zenghui Yu <yuzenghui@huawei.com>
> > Cc: wanghaibin.wang@huawei.com
>
> Reviewed-by: Zenghui Yu <yuzenghui@huawei.com>
Thanks!
>
> Nit: I think the Subject header can be changed to 'irqchip/gic-v4' as
> the bug it fixes only affects GICv4 HW. v4.1 is unaffected.
I'm not so sure.
v4.0 didn't allow direct invalidation of VPE doorbells (we had to use
the fake device hack), except for the HiSi special that implemented
DirectLPI despite the presence of multiple ITSs. It was a violation of
the architecture, but it really saved the day by making invalidations
cheap enough.
Only with v4.1 did we get architectural support for doorbell
invalidation via a register instead of a command for a fake device.
So as far as the architecture is concerned, this should only affect
v4.1. As a side effect, it also affect HiSi's v4.0 implementations.
Or am I missing something?
Cheers,
M.
--
Without deviation from the norm, progress is not possible.
next prev parent reply other threads:[~2023-07-03 18:55 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-17 7:32 [PATCH] irqchip/gic-v4.1: Properly lock VPEs when doing a directLPI invalidation Marc Zyngier
2023-06-29 14:52 ` Zenghui Yu
2023-07-03 18:54 ` Marc Zyngier [this message]
2023-07-04 15:42 ` Zenghui Yu
2023-07-04 16:02 ` Marc Zyngier
2023-06-30 10:33 ` Kunkun Jiang
2023-07-03 19:00 ` [irqchip: irq/irqchip-fixes] " irqchip-bot for Marc Zyngier
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=86wmzgx1va.wl-maz@kernel.org \
--to=maz@kernel.org \
--cc=jiangkunkun@huawei.com \
--cc=linux-kernel@vger.kernel.org \
--cc=tglx@linutronix.de \
--cc=wanghaibin.wang@huawei.com \
--cc=yuzenghui@huawei.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