• James Hogan's avatar
    KVM: MIPS/MMU: Pass GPA PTE bits to KSeg0 GVA PTEs · b584f460
    James Hogan authored
    Propagate the GPA PTE protection bits on to the GVA PTEs on a KSeg0
    fault (except _PAGE_WRITE), rather than always overriding the
    protection. This allows dirty page tracking to work in KSeg0 as a clear
    dirty bit in the GPA PTE will propagate to the GVA PTEs.
    
    This makes it simpler to use a single kvm_mips_map_page() to obtain both
    the main GPA PTE and its buddy (which may be invalid), which also allows
    memory regions to be fully accessible when they don't start and end on a
    2*PAGE_SIZE boundary.
    Signed-off-by: default avatarJames Hogan <james.hogan@imgtec.com>
    Cc: Paolo Bonzini <pbonzini@redhat.com>
    Cc: "Radim Krčmář" <rkrcmar@redhat.com>
    Cc: Ralf Baechle <ralf@linux-mips.org>
    Cc: linux-mips@linux-mips.org
    Cc: kvm@vger.kernel.org
    b584f460
mmu.c 26.5 KB