[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <867c1ze4pg.wl-maz@kernel.org>
Date: Thu, 29 May 2025 17:56:11 +0100
From: Marc Zyngier <maz@...nel.org>
To: James Clark <james.clark@...aro.org>
Cc: Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Jonathan Corbet <corbet@....net>,
Oliver Upton <oliver.upton@...ux.dev>,
Joey Gouly <joey.gouly@....com>,
Suzuki K Poulose <suzuki.poulose@....com>,
Zenghui Yu <yuzenghui@...wei.com>,
Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Arnaldo Carvalho de Melo <acme@...nel.org>,
Namhyung Kim <namhyung@...nel.org>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Jiri Olsa <jolsa@...nel.org>,
Ian Rogers <irogers@...gle.com>,
Adrian Hunter <adrian.hunter@...el.com>,
linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org,
linux-perf-users@...r.kernel.org,
linux-doc@...r.kernel.org,
kvmarm@...ts.linux.dev
Subject: Re: [PATCH v2 06/11] KVM: arm64: Add trap configs for PMSDSFR_EL1
On Thu, 29 May 2025 12:30:27 +0100,
James Clark <james.clark@...aro.org> wrote:
>
> SPE data source filtering (SPE_FEAT_FDS) adds a new register
> PMSDSFR_EL1, add the trap configs for it.
>
> Signed-off-by: James Clark <james.clark@...aro.org>
> ---
> arch/arm64/kvm/emulate-nested.c | 1 +
> arch/arm64/kvm/sys_regs.c | 1 +
> 2 files changed, 2 insertions(+)
>
> diff --git a/arch/arm64/kvm/emulate-nested.c b/arch/arm64/kvm/emulate-nested.c
> index 0fcfcc0478f9..05d3e6b93ae9 100644
> --- a/arch/arm64/kvm/emulate-nested.c
> +++ b/arch/arm64/kvm/emulate-nested.c
> @@ -1169,6 +1169,7 @@ static const struct encoding_to_trap_config encoding_to_cgt[] __initconst = {
> SR_TRAP(SYS_PMSIRR_EL1, CGT_MDCR_TPMS),
> SR_TRAP(SYS_PMSLATFR_EL1, CGT_MDCR_TPMS),
> SR_TRAP(SYS_PMSNEVFR_EL1, CGT_MDCR_TPMS),
> + SR_TRAP(SYS_PMSDSFR_EL1, CGT_MDCR_TPMS),
> SR_TRAP(SYS_TRFCR_EL1, CGT_MDCR_TTRF),
> SR_TRAP(SYS_TRBBASER_EL1, CGT_MDCR_E2TB),
> SR_TRAP(SYS_TRBLIMITR_EL1, CGT_MDCR_E2TB),
> diff --git a/arch/arm64/kvm/sys_regs.c b/arch/arm64/kvm/sys_regs.c
> index 5dde9285afc8..9f544ac7b5a6 100644
> --- a/arch/arm64/kvm/sys_regs.c
> +++ b/arch/arm64/kvm/sys_regs.c
> @@ -2956,6 +2956,7 @@ static const struct sys_reg_desc sys_reg_descs[] = {
> { SYS_DESC(SYS_PMBLIMITR_EL1), undef_access },
> { SYS_DESC(SYS_PMBPTR_EL1), undef_access },
> { SYS_DESC(SYS_PMBSR_EL1), undef_access },
> + { SYS_DESC(SYS_PMSDSFR_EL1), undef_access },
PMSDSFR_EL1 has an offset in the VNCR page (0x858), and must be
described as such. This is equally true for a bunch of other
SPE-related registers, so you might as well fix those while you're at
it.
Thanks,
M.
--
Without deviation from the norm, progress is not possible.
Powered by blists - more mailing lists