• James Hogan's avatar
    MIPS: KVM: Use 64-bit CP0_EBase when appropriate · 0d17aea5
    James Hogan authored
    Update the KVM entry point to write CP0_EBase as a 64-bit register when
    it is 64-bits wide, and to set the WG (write gate) bit if it exists in
    order to write bits 63:30 (or 31:30 on MIPS32).
    
    Prior to MIPS64r6 it was UNDEFINED to perform a 64-bit read or write of
    a 32-bit COP0 register. Since this is dynamically generated code,
    generate the right type of access depending on whether the kernel is
    64-bit and cpu_has_ebase_wg.
    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
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    0d17aea5
entry.c 19.2 KB