From: Marc Zyngier <maz@kernel.org>
To: Will Deacon <will@kernel.org>
Cc: "Mikołaj Lenczewski" <miko.lenczewski@arm.com>,
ryan.roberts@arm.com, suzuki.poulose@arm.com,
yang@os.amperecomputing.com, corbet@lwn.net,
catalin.marinas@arm.com, jean-philippe@linaro.org,
robin.murphy@arm.com, joro@8bytes.org, akpm@linux-foundation.org,
paulmck@kernel.org, mark.rutland@arm.com, joey.gouly@arm.com,
james.morse@arm.com, broonie@kernel.org, oliver.upton@linux.dev,
baohua@kernel.org, david@redhat.com, ioworker0@gmail.com,
jgg@ziepe.ca, nicolinc@nvidia.com, mshavit@google.com,
jsnitsel@redhat.com, smostafa@google.com, kevin.tian@intel.com,
linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, iommu@lists.linux.dev
Subject: Re: [RESEND PATCH v6 1/3] arm64: Add BBM Level 2 cpu feature
Date: Tue, 06 May 2025 15:51:59 +0100 [thread overview]
Message-ID: <86cyclhjw0.wl-maz@kernel.org> (raw)
In-Reply-To: <20250506142508.GB1197@willie-the-truck>
On Tue, 06 May 2025 15:25:09 +0100,
Will Deacon <will@kernel.org> wrote:
>
> On Mon, Apr 28, 2025 at 03:35:14PM +0000, Mikołaj Lenczewski wrote:
> > The Break-Before-Make cpu feature supports multiple levels (levels 0-2),
> > and this commit adds a dedicated BBML2 cpufeature to test against
> > support for, as well as a kernel commandline parameter to optionally
> > disable BBML2 altogether.
> >
> > This is a system feature as we might have a big.LITTLE architecture
> > where some cores support BBML2 and some don't, but we want all cores to
> > be available and BBM to default to level 0 (as opposed to having cores
> > without BBML2 not coming online).
> >
> > To support BBML2 in as wide a range of contexts as we can, we want not
> > only the architectural guarantees that BBML2 makes, but additionally
> > want BBML2 to not create TLB conflict aborts. Not causing aborts avoids
> > us having to prove that no recursive faults can be induced in any path
> > that uses BBML2, allowing its use for arbitrary kernel mappings.
> > Support detection of such CPUs.
> >
> > Signed-off-by: Mikołaj Lenczewski <miko.lenczewski@arm.com>
> > Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>
> > Reviewed-by: Ryan Roberts <ryan.roberts@arm.com>
> > ---
> > .../admin-guide/kernel-parameters.txt | 3 +
> > arch/arm64/Kconfig | 19 +++++
> > arch/arm64/include/asm/cpucaps.h | 2 +
> > arch/arm64/include/asm/cpufeature.h | 5 ++
> > arch/arm64/kernel/cpufeature.c | 71 +++++++++++++++++++
> > arch/arm64/kernel/pi/idreg-override.c | 2 +
> > arch/arm64/tools/cpucaps | 1 +
> > 7 files changed, 103 insertions(+)
> >
> > diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
> > index d9fd26b95b34..2749c67a4f07 100644
> > --- a/Documentation/admin-guide/kernel-parameters.txt
> > +++ b/Documentation/admin-guide/kernel-parameters.txt
> > @@ -449,6 +449,9 @@
> > arm64.no32bit_el0 [ARM64] Unconditionally disable the execution of
> > 32 bit applications.
> >
> > + arm64.nobbml2 [ARM64] Unconditionally disable Break-Before-Make Level
> > + 2 support
>
> Hmm, I'm not sure we really want this. It opens up the door for folks to
> pass 'id_aa64mmfr2.bbm=2' without updating the allow-list which feels
> like it's going to make crashes harder to reason about.
Passing id_aa64mmfr2.bbm=2 shouldn't have any effect if the HW doesn't
advertise it already, as you can only downgrade features. Trying to
upgrade features should leave a nastygram in the kernel log.
M.
--
Without deviation from the norm, progress is not possible.
next prev parent reply other threads:[~2025-05-06 18:44 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-28 15:35 [RESEND PATCH v6 0/3] Initial BBML2 support for contpte_convert() Mikołaj Lenczewski
2025-04-28 15:35 ` [RESEND PATCH v6 1/3] arm64: Add BBM Level 2 cpu feature Mikołaj Lenczewski
2025-04-28 17:55 ` ALOK TIWARI
2025-05-06 8:36 ` Mikołaj Lenczewski
2025-05-06 14:25 ` Will Deacon
2025-05-06 14:51 ` Marc Zyngier [this message]
2025-05-06 14:57 ` Will Deacon
2025-05-06 14:52 ` Ryan Roberts
2025-05-09 13:49 ` Will Deacon
2025-05-09 14:16 ` Ryan Roberts
2025-05-09 14:28 ` Will Deacon
2025-05-09 14:58 ` Ryan Roberts
2025-05-09 15:59 ` Catalin Marinas
2025-05-09 16:04 ` Catalin Marinas
2025-05-12 13:07 ` Ryan Roberts
2025-05-12 13:24 ` Suzuki K Poulose
2025-05-12 13:35 ` Ryan Roberts
2025-05-12 16:33 ` Catalin Marinas
2025-05-13 9:15 ` Suzuki K Poulose
2025-05-14 12:05 ` Catalin Marinas
2025-05-19 9:45 ` Suzuki K Poulose
2025-05-22 15:23 ` Catalin Marinas
2025-05-22 16:29 ` Suzuki K Poulose
2025-05-12 17:17 ` Suzuki K Poulose
2025-04-28 15:35 ` [RESEND PATCH v6 2/3] iommu/arm: Add BBM Level 2 smmu feature Mikołaj Lenczewski
2025-05-06 14:19 ` Will Deacon
2025-04-28 15:35 ` [RESEND PATCH v6 3/3] arm64/mm: Elide tlbi in contpte_convert() under BBML2 Mikołaj Lenczewski
2025-04-28 16:17 ` Ryan Roberts
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=86cyclhjw0.wl-maz@kernel.org \
--to=maz@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=baohua@kernel.org \
--cc=broonie@kernel.org \
--cc=catalin.marinas@arm.com \
--cc=corbet@lwn.net \
--cc=david@redhat.com \
--cc=iommu@lists.linux.dev \
--cc=ioworker0@gmail.com \
--cc=james.morse@arm.com \
--cc=jean-philippe@linaro.org \
--cc=jgg@ziepe.ca \
--cc=joey.gouly@arm.com \
--cc=joro@8bytes.org \
--cc=jsnitsel@redhat.com \
--cc=kevin.tian@intel.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=miko.lenczewski@arm.com \
--cc=mshavit@google.com \
--cc=nicolinc@nvidia.com \
--cc=oliver.upton@linux.dev \
--cc=paulmck@kernel.org \
--cc=robin.murphy@arm.com \
--cc=ryan.roberts@arm.com \
--cc=smostafa@google.com \
--cc=suzuki.poulose@arm.com \
--cc=will@kernel.org \
--cc=yang@os.amperecomputing.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 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.