All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marc Zyngier <maz@kernel.org>
To: linux-arm-kernel@lists.infradead.org
Cc: Hector Martin <marcan@marcan.st>, Arnd Bergmann <arnd@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Will Deacon <will@kernel.org>,
	Catalin Marinas <catalin.marinas@arm.com>,
	kernel-team@android.com
Subject: [PATCH v2 0/3] arm64: Dealing with VHE-only CPUs
Date: Tue, 30 Mar 2021 18:39:44 +0100	[thread overview]
Message-ID: <20210330173947.999859-1-maz@kernel.org> (raw)

This short series is a rewrite of [0] after some reviewing from
Will. It simplifies the esoteric "stay at EL2" path, and move the
feature override code where it actually belongs, allowing us to tell
the user that no, nVHE isn't a thing on these system.

Additional bonus: the box can now boot without CONFIG_ARM64_VHE (and
without KVM, of course), though that's a pretty weird state.

This allows the infamous M1 to boot (tested on a M1 Mini).

Hector, feel free to pull these two patches as a preamble to the next
version of your series, though I'd expect this to go via the arm64
tree for obvious reasons.

* From v1 [1]:
  - added a comment describing the mapping various states
    the override mask/val tuple can describe
  - added a patch to prevent KVM from initialising, treating
    the lact of CONFIG_ARM64_VHE as a mismatched boot

[0] https://lore.kernel.org/r/20210304213902.83903-2-marcan@marcan.st
[1] https://lore.kernel.org/r/20210325124721.941182-1-maz@kernel.org

Marc Zyngier (3):
  arm64: cpufeature: Allow early filtering of feature override
  arm64: Cope with CPUs stuck in VHE mode
  arm64: Allow nVHE impaired CPUs to boot without CONFIG_ARM64_VHE

 arch/arm64/include/asm/cpufeature.h | 17 +++++++++++++
 arch/arm64/include/asm/virt.h       | 18 +++++++++----
 arch/arm64/kernel/cpufeature.c      |  6 +++++
 arch/arm64/kernel/head.S            | 39 ++++++++++++++++++++++++++---
 arch/arm64/kernel/hyp-stub.S        |  8 +++---
 arch/arm64/kernel/idreg-override.c  | 26 ++++++++++++++++++-
 arch/arm64/kvm/va_layout.c          |  9 +++++++
 7 files changed, 110 insertions(+), 13 deletions(-)

-- 
2.29.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

             reply	other threads:[~2021-03-30 17:41 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-30 17:39 Marc Zyngier [this message]
2021-03-30 17:39 ` [PATCH v2 1/3] arm64: cpufeature: Allow early filtering of feature override Marc Zyngier
2021-04-08 11:13   ` Hector Martin
2021-04-08 13:11     ` Marc Zyngier
2021-03-30 17:39 ` [PATCH v2 2/3] arm64: Cope with CPUs stuck in VHE mode Marc Zyngier
2021-04-07 21:16   ` Will Deacon
2021-03-30 17:39 ` [PATCH v2 3/3] arm64: Allow nVHE impaired CPUs to boot without CONFIG_ARM64_VHE Marc Zyngier
2021-04-07 21:18   ` Will Deacon
2021-04-08 10:31     ` Marc Zyngier
2021-04-08 10:58       ` Will Deacon
2021-04-08 13:05         ` 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=20210330173947.999859-1-maz@kernel.org \
    --to=maz@kernel.org \
    --cc=arnd@kernel.org \
    --cc=catalin.marinas@arm.com \
    --cc=kernel-team@android.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=marcan@marcan.st \
    --cc=mark.rutland@arm.com \
    --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 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.