From: Will Deacon <will@kernel.org>
To: Ard Biesheuvel <ardb@kernel.org>
Cc: Ard Biesheuvel <ardb+git@google.com>,
linux-efi@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
Mark Rutland <mark.rutland@arm.com>,
Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
Peter Zijlstra <peterz@infradead.org>,
Catalin Marinas <catalin.marinas@arm.com>,
Mark Brown <broonie@kernel.org>,
Pierre Gondois <Pierre.Gondois@arm.com>,
Sami Mujawar <Sami.Mujawar@arm.com>
Subject: Re: [PATCH v4 resend 3/7] arm64/fpsimd: Don't warn when EFI execution context is preemptible
Date: Tue, 4 Nov 2025 16:16:29 +0000 [thread overview]
Message-ID: <aQom3XPDmPTkq47d@willie-the-truck> (raw)
In-Reply-To: <CAMj1kXHJ8QWLE=awDUpNa0Cf_1YXMQaW-Se1NvvavOocshDkTQ@mail.gmail.com>
On Tue, Nov 04, 2025 at 05:00:34PM +0100, Ard Biesheuvel wrote:
> On Tue, 4 Nov 2025 at 16:52, Will Deacon <will@kernel.org> wrote:
> >
> > On Wed, Oct 15, 2025 at 10:56:38PM +0200, Ard Biesheuvel wrote:
> > > From: Ard Biesheuvel <ardb@kernel.org>
> > >
> > > Kernel mode FP/SIMD no longer requires preemption to be disabled, so
> > > only warn on uses of FP/SIMD from preemptible context if the fallback
> > > path is taken for cases where kernel mode NEON would not be allowed
> > > otherwise.
> > >
> > > Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
> > > ---
> > > arch/arm64/kernel/fpsimd.c | 4 ++--
> > > 1 file changed, 2 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/arch/arm64/kernel/fpsimd.c b/arch/arm64/kernel/fpsimd.c
> > > index e3f8f51748bc..3d848c89604e 100644
> > > --- a/arch/arm64/kernel/fpsimd.c
> > > +++ b/arch/arm64/kernel/fpsimd.c
> > > @@ -1934,11 +1934,11 @@ void __efi_fpsimd_begin(void)
> > > if (!system_supports_fpsimd())
> > > return;
> > >
> > > - WARN_ON(preemptible());
> > > -
> > > if (may_use_simd()) {
> > > kernel_neon_begin();
> > > } else {
> > > + WARN_ON(preemptible());
> > > +
> >
> > Given that may_use_simd() returns false on systems without support for
> > fpsimd, I wonder whether moving this WARN_ON() actually helps with
> > anything.
>
> This code is only reachable if system_supports_fpsimd() returns true,
> so may_use_simd() will only return false here when running in
> hardirq/NMI context.
Sorry, I missed the check _right at the top of the hunk_!
>
> > That is, you probably shouldn't be calling __efi_fpsimd_begin()
> > from preemptible code regardless, no?
> >
>
> Not sure I follow you here: __efi_fpsimd_begin() is generally called
> from preemptible code, and it is the EFI runtime wrappers themselves
> that disable preemption - that is the whole point of this series.
Ignore me. I was reviewing this against the upstream
arch_efi_call_virt_setup/teardown() functions rather than in the context
of the changes made later in this series (specifically patch 5).
Will
next prev parent reply other threads:[~2025-11-04 16:16 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-15 20:56 [PATCH v4 resend 0/7] arm64: Make EFI calls preemptible Ard Biesheuvel
2025-10-15 20:56 ` [PATCH v4 resend 1/7] efi: Add missing static initializer for efi_mm::cpus_allowed_lock Ard Biesheuvel
2025-10-15 20:56 ` [PATCH v4 resend 2/7] efi/runtime-wrappers: Keep track of the efi_runtime_lock owner Ard Biesheuvel
2025-10-15 20:56 ` [PATCH v4 resend 3/7] arm64/fpsimd: Don't warn when EFI execution context is preemptible Ard Biesheuvel
2025-11-04 15:52 ` Will Deacon
2025-11-04 16:00 ` Ard Biesheuvel
2025-11-04 16:16 ` Will Deacon [this message]
2025-10-15 20:56 ` [PATCH v4 resend 4/7] arm64/fpsimd: Permit kernel mode NEON with IRQs off Ard Biesheuvel
2025-10-15 20:56 ` [PATCH v4 resend 5/7] arm64/efi: Drop efi_rt_lock spinlock from EFI arch wrapper Ard Biesheuvel
2025-10-15 20:56 ` [PATCH v4 resend 6/7] arm64/efi: Move uaccess en/disable out of efi_set_pgd() Ard Biesheuvel
2025-10-15 20:56 ` [PATCH v4 resend 7/7] arm64/efi: Call EFI runtime services without disabling preemption Ard Biesheuvel
2025-11-11 18:45 ` [PATCH v4 resend 0/7] arm64: Make EFI calls preemptible Catalin Marinas
2025-11-11 18:50 ` Ard Biesheuvel
2025-11-11 18:59 ` Catalin Marinas
2025-11-11 20:16 ` Catalin Marinas
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=aQom3XPDmPTkq47d@willie-the-truck \
--to=will@kernel.org \
--cc=Pierre.Gondois@arm.com \
--cc=Sami.Mujawar@arm.com \
--cc=ardb+git@google.com \
--cc=ardb@kernel.org \
--cc=bigeasy@linutronix.de \
--cc=broonie@kernel.org \
--cc=catalin.marinas@arm.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-efi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=peterz@infradead.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox