summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python
diff options
context:
space:
mode:
authorWei-Lin Chang <weilin.chang@arm.com>2026-09-15 16:43:00 +0100
committerMarc Zyngier <maz@kernel.org>2026-09-20 08:20:20 +0100
commita6ca6cba59598de94eda90e4b3a4e405621aca90 (patch)
tree2ecc812c932c5994f5c284c6fbe985344e9c837a /tools/perf/scripts/python
parent3b8ce2b5132ae4eebd81811ffd3bc2395c41ecfd (diff)
KVM: arm64: nv: Introduce guest stage-2 tracking structures
In order to avoid unmapping all shadow stage-2 mappings when KVM receives a MMU notifier unmap call, we have to keep track of the canonical IPA -> nested IPA relationship of the shadow mappings created. This essentially means tracking the guest's stage-2. To do this, represent each mapping by struct kvm_guest_s2_mapping. It stores the mapping's canonical IPA range and the nested IPA range using two interval tree nodes. Both nodes will be inserted into their respective interval trees called guest_s2_mappings. The canonical IPA ranges will be stored in the tree within the canonical MMU, and the nested IPA ranges will be stored in the corresponding nested MMU's tree. For example: struct kvm_guest_s2_mapping mapping1, mapping2; ---------------------> mapping2.canonical | mapping1.canonical | ^ (both stored in canonical mmu's tree) | | --*****-----------------------*****----------- CIPA \\\\\ ||||| mapping1.nested_mmu \\\\\ \\\\\ | \\\\\ \\\\\ v ------\\\\\---------------------*****--------- NIPA #1 (nested mmu #1) \\\\\ | \\\\\ -> mapping1.nested \\\\\ (stored in nested mmu #1's tree) \\\\\ -----------*****------------------------------ NIPA #2 (nested mmu #2) | ^ -> mapping2.nested | (stored in nested mmu #2's tree) mapping2.nested_mmu Using the trees we can look up nodes in either of the IPA spaces, and for each node, find the corresponding range in the other IPA space from the other node in the enclosing kvm_guest_s2_mapping. Define kvm_guest_s2_mapping and the interval tree here. Guest stage-2 mapping tracking will come in subsequent patches. Signed-off-by: Wei-Lin Chang <weilin.chang@arm.com> Reviewed-by: Oliver Upton <oupton@kernel.org> Tested-by: Shuai Xue <xueshuai@linux.alibaba.com> Tested-by: Itaru Kitayama <itaru.kitayama@fujitsu.com> Link: https://patch.msgid.link/20260915154305.3852871-3-weilin.chang@arm.com Signed-off-by: Marc Zyngier <maz@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions