• Ladi Prosek's avatar
    KVM: nVMX: introduce nested_vmx_load_cr3 and call it on vmentry · 9ed38ffa
    Ladi Prosek authored
    Loading CR3 as part of emulating vmentry is different from regular CR3 loads,
    as implemented in kvm_set_cr3, in several ways.
    
    * different rules are followed to check CR3 and it is desirable for the caller
    to distinguish between the possible failures
    * PDPTRs are not loaded if PAE paging and nested EPT are both enabled
    * many MMU operations are not necessary
    
    This patch introduces nested_vmx_load_cr3 suitable for CR3 loads as part of
    nested vmentry and vmexit, and makes use of it on the nested vmentry path.
    Signed-off-by: default avatarLadi Prosek <lprosek@redhat.com>
    Signed-off-by: default avatarRadim Krčmář <rkrcmar@redhat.com>
    9ed38ffa
vmx.c 330 KB