linux/arch/arm64/kvm/hyp
Marc Zyngier 9d8604b285 KVM: arm64: Rework kvm_pgtable initialisation
Ganapatrao reported that the kvm_pgtable->mmu pointer is more or
less hardcoded to the main S2 mmu structure, while the nested
code needs it to point to other instances (as we have one instance
per nested context).

Rework the initialisation of the kvm_pgtable structure so that
this assumtion doesn't hold true anymore. This requires some
minor changes to the order in which things are initialised
(the mmu->arch pointer being the critical one).

Reported-by: Ganapatrao Kulkarni <gankulkarni@os.amperecomputing.com>
Reviewed-by: Ganapatrao Kulkarni <gankulkarni@os.amperecomputing.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20211129200150.351436-5-maz@kernel.org
2021-12-16 17:01:05 +00:00
..
include ARM: 2021-11-02 11:24:14 -07:00
nvhe KVM: arm64: Rework kvm_pgtable initialisation 2021-12-16 17:01:05 +00:00
vhe KVM: arm64: pkvm: Pass vpcu instead of kvm to kvm_get_exit_handler_array() 2021-10-18 16:57:09 +01:00
aarch32.c KVM: arm64: Move kvm_vcpu_trap_il_is32bit into kvm_skip_instr32() 2020-11-10 08:34:24 +00:00
entry.S KVM: arm64: Save/restore MTE registers 2021-06-22 14:08:05 +01:00
exception.c KVM: arm64: Introduce MTE VM feature 2021-06-22 14:08:05 +01:00
fpsimd.S arm64/sve: Explicitly load vector length when restoring SVE state 2021-10-21 10:18:17 +01:00
hyp-entry.S KVM: arm64: Extract ESR_ELx.EC only 2021-11-08 10:41:12 +00:00
Makefile KVM: arm64: Prepare the creation of s1 mappings at EL2 2021-03-19 12:01:21 +00:00
pgtable.c KVM: arm64: Rework kvm_pgtable initialisation 2021-12-16 17:01:05 +00:00
reserved_mem.c memblock: make memblock_find_in_range method private 2021-09-03 09:58:17 -07:00
vgic-v2-cpuif-proxy.c KVM: arm64: Remove hyp_symbol_addr 2021-01-23 14:01:00 +00:00
vgic-v3-sr.c KVM: arm64: vgic-v3: Align emulated cpuif LPI state machine with the pseudocode 2021-10-17 11:06:36 +01:00