• J
    target-i386: Add NPT support · fe441054
    Jan Kiszka 提交于
    This implements NPT suport for SVM by hooking into
    x86_cpu_handle_mmu_fault where it reads the stage-1 page table. Whether
    we need to perform this 2nd stage translation, and how, is decided
    during vmrun and stored in hflags2, along with nested_cr3 and
    nested_pg_mode.
    
    As get_hphys performs a direct cpu_vmexit in case of NPT faults, we need
    retaddr in that function. To avoid changing the signature of
    cpu_handle_mmu_fault, this passes the value from tlb_fill to get_hphys
    via the CPU state.
    
    This was tested successfully via the Jailhouse hypervisor.
    Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
    Message-Id: <567473a0-6005-5843-4c73-951f476085ca@web.de>
    Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
    fe441054
cpu.c 195.3 KB