projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
21de26d
)
KVM: arm64: Trap external trace for protected VMs
author
Fuad Tabba
<tabba@google.com>
Thu, 14 Dec 2023 10:01:57 +0000
(10:01 +0000)
committer
Marc Zyngier
<maz@kernel.org>
Mon, 18 Dec 2023 11:25:51 +0000
(11:25 +0000)
pKVM does not support external trace for protected VMs. Trap
external trace, and add the ExtTrcBuff to make it possible to
check for the feature.
Signed-off-by: Fuad Tabba <tabba@google.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link:
https://lore.kernel.org/r/20231214100158.2305400-18-tabba@google.com
arch/arm64/kvm/hyp/nvhe/pkvm.c
patch
|
blob
|
history
diff --git
a/arch/arm64/kvm/hyp/nvhe/pkvm.c
b/arch/arm64/kvm/hyp/nvhe/pkvm.c
index 9d23a51d7f7525d50558adefdc402c906ea2b82a..84b5c3f387d80cc894cb61e0f967561d55fcfffa 100644
(file)
--- a/
arch/arm64/kvm/hyp/nvhe/pkvm.c
+++ b/
arch/arm64/kvm/hyp/nvhe/pkvm.c
@@
-136,6
+136,10
@@
static void pvm_init_traps_aa64dfr0(struct kvm_vcpu *vcpu)
cptr_set |= CPTR_EL2_TTA;
}
+ /* Trap External Trace */
+ if (!FIELD_GET(ARM64_FEATURE_MASK(ID_AA64DFR0_EL1_ExtTrcBuff), feature_ids))
+ mdcr_clear |= MDCR_EL2_E2TB_MASK << MDCR_EL2_E2TB_SHIFT;
+
vcpu->arch.mdcr_el2 |= mdcr_set;
vcpu->arch.mdcr_el2 &= ~mdcr_clear;
vcpu->arch.cptr_el2 |= cptr_set;