diff options
| author | Fuad Tabba <fuad.tabba@linux.dev> | 2026-10-01 14:56:55 +0100 |
|---|---|---|
| committer | Marc Zyngier <maz@kernel.org> | 2026-10-02 15:22:39 +0100 |
| commit | cf533b4d3630b229d78ad55567c5db2f365052a2 (patch) | |
| tree | e790b1e15a9eaaeb98c864d367cab6b2d523b783 /tools/perf/scripts/python/stackcollapse.py | |
| parent | 3708f6342f010d66a767b587dc881f18d95ceb3e (diff) | |
KVM: arm64: Validate the host vCPU's VM before reading it under pKVM
On an MTE-capable host under pKVM, enter_exception64() reads the VM's
MTE flag through vcpu->kvm, which for a host vCPU is a host-writable
pointer nothing validates. The host can point it at any address in the
hyp linear map and read back bit 1 of that word through PSR_TCO in the
vCPU's CPSR, or panic the hypervisor with an unmapped one.
Get the VM through a get/put pair around the read: a loaded vCPU's is
the hyp VM, an unloaded host vCPU's is read once and pinned, and a
pointer the host never shared leaves TCO clear.
Fixes: ea7fc1bb1cd1b ("KVM: arm64: Introduce MTE VM feature")
Reported-by: Sashiko <sashiko-bot@kernel.org>
Closes: https://lore.kernel.org/all/20260914070536.877D91F000FF@smtp.kernel.org/
Reviewed-by: Vincent Donnefort <vdonnefort@google.com>
Reviewed-by: Joey Gouly <joey.gouly@arm.com>
Cc: stable@vger.kernel.org
Signed-off-by: Fuad Tabba <fuad.tabba@linux.dev>
Link: https://patch.msgid.link/20261001135711.1640520-3-fuad.tabba@linux.dev
Signed-off-by: Marc Zyngier <maz@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/stackcollapse.py')
0 files changed, 0 insertions, 0 deletions
