From: Marc Zyngier <maz@kernel.org>
To: linux-arm-kernel@lists.infradead.org
Cc: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>,
kernel-team@android.com,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Catalin Marinas <catalin.marinas@arm.com>,
Stephen Boyd <swboyd@chromium.org>,
dianders@google.com, Will Deacon <will@kernel.org>
Subject: [PATCH v3 0/2] arm64: Allow erratum 1418040 for late CPUs
Date: Fri, 31 Jul 2020 18:38:22 +0100 [thread overview]
Message-ID: <20200731173824.107480-1-maz@kernel.org> (raw)
Erratum 1418040 currently prevents a late CPU from booting if none
of the early CPUs are affected by it. This is because the handling
is implemented as alternatives, and we have already got rid of them
by the time userspace onlines a new CPU.
A solution to this is to move everything into C code, and rely on
static keys instead. Once this is done, the feature can be allowed
for late CPUs.
Note that CPUs affected by 1418040 also tend to miss AArch32-EL1,
meaning they cannot be used as late CPUs when KVM is enabled and
that their sibblings have AArch32-EL1.
* From v1:
- Dropped check for kernel threads
- Added comment describing the switching logic
- Made the errata handling function __always_inline
* From v2:
- Dropped __always_inline again
- Simplified logic
Marc Zyngier (2):
arm64: Move handling of erratum 1418040 into C code
arm64: Allow booting of late CPUs affected by erratum 1418040
arch/arm64/kernel/cpu_errata.c | 2 ++
arch/arm64/kernel/entry.S | 21 --------------------
arch/arm64/kernel/process.c | 35 ++++++++++++++++++++++++++++++++++
3 files changed, 37 insertions(+), 21 deletions(-)
--
2.27.0
*** BLURB HERE ***
Marc Zyngier (2):
arm64: Move handling of erratum 1418040 into C code
arm64: Allow booting of late CPUs affected by erratum 1418040
arch/arm64/kernel/cpu_errata.c | 2 ++
arch/arm64/kernel/entry.S | 21 ---------------------
arch/arm64/kernel/process.c | 34 ++++++++++++++++++++++++++++++++++
3 files changed, 36 insertions(+), 21 deletions(-)
--
2.27.0
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next reply other threads:[~2020-07-31 17:40 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-31 17:38 Marc Zyngier [this message]
2020-07-31 17:38 ` [PATCH v3 1/2] arm64: Move handling of erratum 1418040 into C code Marc Zyngier
2020-07-31 18:00 ` Stephen Boyd
2020-07-31 17:38 ` [PATCH v3 2/2] arm64: Allow booting of late CPUs affected by erratum 1418040 Marc Zyngier
[not found] ` <159803353178.13439.17036526669146072985.b4-ty@arm.com>
2020-09-09 14:53 ` [PATCH v3 0/2] arm64: Allow erratum 1418040 for late CPUs Doug Anderson
2020-09-10 13:43 ` Sai Prakash Ranjan
[not found] ` <3d5f6d5289304c558830d5fb8820e6cb@codeaurora.org>
2020-09-11 13:30 ` Marc Zyngier
2020-09-11 16:34 ` Sai Prakash Ranjan
[not found] ` <51c30228d9fe3dd6e2a55991831e95b0@codeaurora.org>
2020-09-11 16:42 ` Will Deacon
2020-09-11 17:47 ` 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=20200731173824.107480-1-maz@kernel.org \
--to=maz@kernel.org \
--cc=catalin.marinas@arm.com \
--cc=dianders@google.com \
--cc=kernel-team@android.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=saiprakash.ranjan@codeaurora.org \
--cc=suzuki.poulose@arm.com \
--cc=swboyd@chromium.org \
--cc=will@kernel.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;
as well as URLs for NNTP newsgroup(s).