aboutsummaryrefslogtreecommitdiffstats
path: root/rust/helpers/helpers.c
diff options
context:
space:
mode:
authorBen Horgan <[email protected]>2025-05-12 11:41:10 +0000
committerMarc Zyngier <[email protected]>2025-05-16 12:01:18 +0000
commit5799a2983fea4f22f6aaa291aee3b704db81d29f (patch)
tree1ac740611c31a83a593a592a5e865315524fac60 /rust/helpers/helpers.c
parentLinux 6.15-rc3 (diff)
downloadkernel-5799a2983fea4f22f6aaa291aee3b704db81d29f.tar.gz
kernel-5799a2983fea4f22f6aaa291aee3b704db81d29f.zip
arm64/sysreg: Expose MTE_frac so that it is visible to KVM
KVM exposes the sanitised ID registers to guests. Currently these ignore the ID_AA64PFR1_EL1.MTE_frac field, meaning guests always see a value of zero. This is a problem for platforms without the MTE_ASYNC feature where ID_AA64PFR1_EL1.MTE==0x2 and ID_AA64PFR1_EL1.MTE_frac==0xf. KVM forces MTE_frac to zero, meaning the guest believes MTE_ASYNC is supported, when no async fault will ever occur. Before KVM can fix this, the architecture needs to sanitise the ID register field for MTE_frac. Linux itself does not use MTE_frac field and just assumes MTE async faults can be generated if MTE is supported. Signed-off-by: Ben Horgan <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Marc Zyngier <[email protected]>
Diffstat (limited to 'rust/helpers/helpers.c')
0 files changed, 0 insertions, 0 deletions