Skip to content

Commit 288eb55

Browse files
Fuad TabbaMarc Zyngier
authored andcommitted
KVM: arm64: Fix Trace Buffer trapping for protected VMs
For protected VMs in pKVM, the hypervisor should trap accesses to trace buffer system registers if Trace Buffer isn't supported by the VM. However, the current code only traps if Trace Buffer External Mode isn't supported. Fix this by checking for FEAT_TRBE (Trace Buffer) rather than FEAT_TRBE_EXT. Fixes: 9d52612 ("KVM: arm64: Trap external trace for protected VMs") Reported-by: Suzuki K Poulose <suzuki.poulose@arm.com> Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com> Signed-off-by: Fuad Tabba <tabba@google.com> Link: https://patch.msgid.link/20251211104710.151771-2-tabba@google.com Signed-off-by: Marc Zyngier <maz@kernel.org>
1 parent 9ace475 commit 288eb55

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

arch/arm64/kvm/hyp/nvhe/pkvm.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ static void pvm_init_traps_mdcr(struct kvm_vcpu *vcpu)
117117
if (!kvm_has_feat(kvm, ID_AA64DFR0_EL1, TraceFilt, IMP))
118118
val |= MDCR_EL2_TTRF;
119119

120-
if (!kvm_has_feat(kvm, ID_AA64DFR0_EL1, ExtTrcBuff, IMP))
120+
if (!kvm_has_feat(kvm, ID_AA64DFR0_EL1, TraceBuffer, IMP))
121121
val |= MDCR_EL2_E2TB_MASK;
122122

123123
/* Trap Debug Communications Channel registers */

0 commit comments

Comments
 (0)