Re: [PATCH 6.12 004/265] KVM: arm64: Advertise support for FEAT_SCTLR2

Marc Zyngier
2026-03-12T20:26:57Z

On Thu, 12 Mar 2026 20:06:31 +0000,
Greg Kroah-Hartman <gregkh@linuxfoundation.org> wrote:
>
> 6.12-stable review patch. If anyone has any objections, please let me know.

I already objected to this nonsense [1]. This is actively creating a
security hole. Please drop this patch.

If you can't drop this single patch and resolve the trivial conflict,
please drop *all* KVM/arm64 patches.

Thanks,

M.

[1] https://lore.kernel.org/r/87zf4jd1xs.wl-maz@kernel.org

>
> ------------------
>
> From: Oliver Upton <oliver.upton@linux.dev>
>
> [ Upstream commit 075c2dc7367e7e80d83adae8db597e48ceb7ba94 ]
>
> Everything is in place to handle the additional state for SCTLR2_ELx,
> which is all that FEAT_SCTLR2 implies.
>
> Reviewed-by: Marc Zyngier <maz@kernel.org>
> Link: https://lore.kernel.org/r/20250708172532.1699409-22-oliver.upton@linux.dev
> Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
> Stable-dep-of: f66857bafd4f ("KVM: arm64: Hide S1POE from guests when not supported by the host")
> Signed-off-by: Sasha Levin <sashal@kernel.org>
> ---
> arch/arm64/kvm/sys_regs.c | 7 +++++--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm64/kvm/sys_regs.c b/arch/arm64/kvm/sys_regs.c
> index 5c09c788aaa61..784603a355487 100644
> --- a/arch/arm64/kvm/sys_regs.c
> +++ b/arch/arm64/kvm/sys_regs.c
> @@ -1559,8 +1559,10 @@ static u64 __kvm_read_sanitised_id_reg(const struct kvm_vcpu *vcpu,
> val &= ~ID_AA64MMFR2_EL1_CCIDX_MASK;
> break;
> case SYS_ID_AA64MMFR3_EL1:
> - val &= ID_AA64MMFR3_EL1_TCRX | ID_AA64MMFR3_EL1_S1POE |
> - ID_AA64MMFR3_EL1_S1PIE;
> + val &= ID_AA64MMFR3_EL1_TCRX |
> + ID_AA64MMFR3_EL1_SCTLRX |
> + ID_AA64MMFR3_EL1_S1POE |
> + ID_AA64MMFR3_EL1_S1PIE;
> break;
> case SYS_ID_MMFR4_EL1:
> val &= ~ARM64_FEATURE_MASK(ID_MMFR4_EL1_CCIDX);
> @@ -2521,6 +2523,7 @@ static const struct sys_reg_desc sys_reg_descs[] = {
> ID_AA64MMFR2_EL1_NV |
> ID_AA64MMFR2_EL1_CCIDX)),
> ID_WRITABLE(ID_AA64MMFR3_EL1, (ID_AA64MMFR3_EL1_TCRX |
> + ID_AA64MMFR3_EL1_SCTLRX |
> ID_AA64MMFR3_EL1_S1PIE |
> ID_AA64MMFR3_EL1_S1POE)),
> ID_SANITISED(ID_AA64MMFR4_EL1),
> --
> 2.51.0
>
>
>
>

--
Jazz isn't dead. It just smells funny.