diff options
| author | Marc Zyngier <maz@kernel.org> | 2026-10-01 14:56:58 +0100 |
|---|---|---|
| committer | Marc Zyngier <maz@kernel.org> | 2026-10-02 15:22:39 +0100 |
| commit | 66a5e82d2a8d113d5953d04e008447d6b779e03e (patch) | |
| tree | b49ea98f7947ddae7b4a66158f2ff98c2a19b3d8 /tools/perf/scripts/python | |
| parent | a5b0f36a045e0e96f8e2e044403ff8e6464995e1 (diff) | |
KVM: arm64: Introduce per-EC entry handlers for pKVM
Add an ESR_EL2.EC-indexed handler table, entry_hyp_vm_handlers[],
read from flush_hyp_vcpu() on re-entry when the previous exit was
a trap: sync_hyp_vcpu() records the exit reason in the hyp vCPU as
exit_code, and the trap's exception class comes from its ESR_EL2. Its
single generic handler stands in until the per-EC marshalling patch
replaces the table with protected-only ones.
Entry carries the host's requested PC updates to the hyp vCPU: add
vcpu_copy_flag() to copy a masked set of flags between the two vCPU
structures, with PC_UPDATE_REQ covering INCREMENT_PC and the
pending-exception flags. The wholesale iflags copy moves into the
non-protected branch; a protected vCPU takes only PC_UPDATE_REQ.
Reviewed-by: Joey Gouly <joey.gouly@arm.com>
Co-developed-by: Fuad Tabba <fuad.tabba@linux.dev>
Signed-off-by: Fuad Tabba <fuad.tabba@linux.dev>
Link: https://patch.msgid.link/20261001135711.1640520-6-fuad.tabba@linux.dev
Signed-off-by: Marc Zyngier <maz@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions
