mirror_ubuntu-kernels/arch/x86/kvm/vmx
Paolo Bonzini 3cffc89d9d KVM: x86/mmu: load new PGD after the shadow MMU is initialized
Now that __kvm_mmu_new_pgd does not look at the MMU's root_level and
shadow_root_level anymore, pull the PGD load after the initialization of
the shadow MMUs.

Besides being more intuitive, this enables future simplifications
and optimizations because it's not necessary anymore to compute the
role outside kvm_init_mmu.  In particular, kvm_mmu_reset_context was not
attempting to use a cached PGD to avoid having to figure out the new role.
With this change, it could follow what nested_{vmx,svm}_load_cr3 are doing,
and avoid unloading all the cached roots.

Reviewed-by: Sean Christopherson <seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-02-25 08:20:18 -05:00
..
capabilities.h KVM: VMX: Remove vmcs_config.order 2022-01-26 12:14:58 -05:00
evmcs.c KVM: nVMX: Implement evmcs_field_offset() suitable for handle_vmread() 2022-01-28 07:38:26 -05:00
evmcs.h KVM: nVMX: Allow VMREAD when Enlightened VMCS is in use 2022-01-28 07:38:26 -05:00
nested.c KVM: x86/mmu: load new PGD after the shadow MMU is initialized 2022-02-25 08:20:18 -05:00
nested.h KVM: nVMX: Refactor PMU refresh to avoid referencing kvm_x86_ops.pmu_ops 2022-02-10 13:47:19 -05:00
pmu_intel.c KVM: x86: Provide per VM capability for disabling PMU virtualization 2022-02-25 08:20:14 -05:00
posted_intr.c KVM: VMX: Rename VMX functions to conform to kvm_x86_ops names 2022-02-10 13:47:20 -05:00
posted_intr.h KVM: VMX: Rename VMX functions to conform to kvm_x86_ops names 2022-02-10 13:47:20 -05:00
sgx.c KVM: x86: SGX must obey the KVM_INTERNAL_ERROR_EMULATION protocol 2021-10-25 06:48:25 -04:00
sgx.h KVM: VMX: Enable SGX virtualization for SGX1, SGX2 and LC 2021-04-20 04:18:56 -04:00
vmcs12.c KVM: nVMX: Rename vmcs_to_field_offset{,_table} 2022-01-28 07:38:26 -05:00
vmcs12.h KVM: nVMX: Rename vmcs_to_field_offset{,_table} 2022-01-28 07:38:26 -05:00
vmcs_shadow_fields.h KVM: Fix some out-dated function names in comment 2020-01-21 13:57:27 +01:00
vmcs.h kvm: x86: Intercept #NM for saving IA32_XFD_ERR 2022-01-14 13:44:18 -05:00
vmenter.S x86: Prepare asm files for straight-line-speculation 2021-12-08 12:25:37 +01:00
vmx_ops.h RISCV: 2022-01-16 16:15:14 +02:00
vmx.c KVM: x86: use struct kvm_mmu_root_info for mmu->root 2022-02-25 08:20:16 -05:00
vmx.h KVM: Move x86 VMX's posted interrupt list_head to vcpu_vmx 2022-01-19 12:14:38 -05:00