Skip to content

KVM: arm64: Get rid of REG_HIDDEN_USER

Marc Zyngier kvm kvmarm linux-arm-kernel 1 version Applied

Status from this message: Applied to next, thanks!

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest3 patches 2 repliesApplied

Patches in v1 Applied

#Subject and filesSizeRepliesApplied
1/3KVM: arm64: Simplify handling of CNTKCTL_EL12arch/arm64/kvm/sys_regs.c+13 -100 replies
2/3KVM: arm64: Simplify visibility handling of AArch32 SPSR_*arch/arm64/kvm/sys_regs.c+4 -80 replies
3/3KVM: arm64: Get rid of REG_HIDDEN_USER visibility qualifierarch/arm64/kvm/sys_regs.c arch/arm64/kvm/sys_regs.h+5 -260 replies

Reviews trailers per patch

None of the 3 patches has a Reviewed-by or Acked-by of their own; the series has one for all of them.

PatchOliver Upton
SeriesR-b
1/3
2/3
3/3

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [PATCH 0/3] KVM: arm64: Get rid of REG_HIDDEN_USER

REG_HIDDEN_USER was introduced as a way to deal with the ARMv8.3 flavour of FEAT_NV, where most EL12 sysreg accesses would trap and yet be mapped to a EL1 register (KVM doing in SW what FEAT_NV2 does in HW). This handling imposed that the EL12 register shouldn't be visible to userspace, hence the special REG_HIDDEN_USER visibility.

Since 4d4f52052ba8 ("KVM: arm64: nv: Drop EL12 register traps that are redirected to VNCR") and the admission that KVM would never be supporting the original FEAT_NV, REG_HIDDEN_USER only had a few users, all of which could either be replaced by a more ad-hoc mechanism, or removed altogether.

This series goes ahead and cleans it up for good, removing a tiny bit of unnecessary complexity.

Marc Zyngier (3):
KVM: arm64: Simplify handling of CNTKCTL_EL12
KVM: arm64: Simplify visibility handling of AArch32 SPSR_*
KVM: arm64: Get rid of REG_HIDDEN_USER visibility qualifier

 arch/arm64/kvm/sys_regs.c | 52 +++++++++++++++------------------------
 arch/arm64/kvm/sys_regs.h | 14 ++---------
 2 files changed, 22 insertions(+), 44 deletions(-)
Signature · 1 line
2.39.2