mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-09 12:17:12 +09:00
arm64: KVM: enable trapping of all debug registers
Enable trapping of the debug registers, preventing the guests to
mess with the host state (and allowing guests to use the debug
infrastructure as well).
Reviewed-by: Anup Patel <anup.patel@linaro.org>
Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
(cherry picked from commit d329de0933)
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
This commit is contained in:
committed by
Christoffer Dall
parent
44af263503
commit
99999d6ea6
@@ -770,6 +770,14 @@
|
||||
mrs x2, mdcr_el2
|
||||
and x2, x2, #MDCR_EL2_HPMN_MASK
|
||||
orr x2, x2, #(MDCR_EL2_TPM | MDCR_EL2_TPMCR)
|
||||
orr x2, x2, #(MDCR_EL2_TDRA | MDCR_EL2_TDOSA)
|
||||
|
||||
// Check for KVM_ARM64_DEBUG_DIRTY, and set debug to trap
|
||||
// if not dirty.
|
||||
ldr x3, [x0, #VCPU_DEBUG_FLAGS]
|
||||
tbnz x3, #KVM_ARM64_DEBUG_DIRTY_SHIFT, 1f
|
||||
orr x2, x2, #MDCR_EL2_TDA
|
||||
1:
|
||||
msr mdcr_el2, x2
|
||||
.endm
|
||||
|
||||
|
||||
Reference in New Issue
Block a user