diff options
author | Oliver Upton <oliver.upton@linux.dev> | 2025-09-17 13:31:24 -0700 |
---|---|---|
committer | Marc Zyngier <maz@kernel.org> | 2025-09-18 16:46:20 +0100 |
commit | 4a684088421d5a1ffb3b13243c58a9078c99e4b9 (patch) | |
tree | b8f2e2608f93be674801b74ab1193541c5ea890f /rust/kernel/irq/request.rs | |
parent | b320789d6883cc00ac78ce83bccbfe7ed58afcf0 (diff) |
KVM: arm64: nv: Trap debug registers when in hyp context
In case you haven't realized it yet, the architecture is _slightly_
broken in the context of nested virt. Here we have another example of
FEAT_NV2 redirecting a sysreg (MDSCR_EL1) to memory that actually
affects execution at vEL2.
Fortunately, MDCR_EL2.TDA provides the necessary traps to hide this
mess at the expense of unnecessarily trapping the breakpoint/watchpoint
registers. Yes, FEAT_FGT gives us a precise trap but let's just opt for
obvious correctness to start.
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Diffstat (limited to 'rust/kernel/irq/request.rs')
0 files changed, 0 insertions, 0 deletions