• Paolo Bonzini's avatar
    KVM: SVM: use NPT page attributes · 3c2e7f7d
    Paolo Bonzini authored
    Right now, NPT page attributes are not used, and the final page
    attribute depends solely on gPAT (which however is not synced
    correctly), the guest MTRRs and the guest page attributes.
    
    However, we can do better by mimicking what is done for VMX.
    In the absence of PCI passthrough, the guest PAT can be ignored
    and the page attributes can be just WB.  If passthrough is being
    used, instead, keep respecting the guest PAT, and emulate the guest
    MTRRs through the PAT field of the nested page tables.
    
    The only snag is that WP memory cannot be emulated correctly,
    because Linux's default PAT setting only includes the other types.
    Tested-by: default avatarJoerg Roedel <jroedel@suse.de>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    3c2e7f7d
svm.c 117 KB