summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/export-to-sqlite.py
diff options
context:
space:
mode:
authorMarc Zyngier <maz@kernel.org>2024-04-19 13:29:21 +0300
committerMarc Zyngier <maz@kernel.org>2024-04-20 14:42:47 +0300
commit1b06b99f25e0c957feb488ff8117a37f592c3866 (patch)
tree10454855074c161d8ef6af1d46280c25091216ac /tools/perf/scripts/python/export-to-sqlite.py
parentfec50db7033ea478773b159e0e2efb135270e3b7 (diff)
downloadlinux-1b06b99f25e0c957feb488ff8117a37f592c3866.tar.xz
KVM: arm64: Harden __ctxt_sys_reg() against out-of-range values
The unsuspecting kernel tinkerer can be easily confused into writing something that looks like this: ikey.lo = __vcpu_sys_reg(vcpu, SYS_APIAKEYLO_EL1); which seems vaguely sensible, until you realise that the second parameter is the encoding of a sysreg, and not the index into the vcpu sysreg file... Debugging what happens in this case is an interesting exercise in head<->wall interactions. As they often say: "Any resemblance to actual persons, living or dead, or actual events is purely coincidental". In order to save people's time, add some compile-time hardening that will at least weed out the "stupidly out of range" values. This will *not* catch anything that isn't a compile-time constant. Reviewed-by: Joey Gouly <joey.gouly@arm.com> Reviewed-by: Oliver Upton <oliver.upton@linux.dev> Link: https://lore.kernel.org/r/20240419102935.1935571-2-maz@kernel.org Signed-off-by: Marc Zyngier <maz@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/export-to-sqlite.py')
0 files changed, 0 insertions, 0 deletions