Skip to content
  • David Gibson's avatar
    mmu-hash64: Implement Virtual Page Class Key Protection · f80872e2
    David Gibson authored
    
    
    Version 2.06 of the Power architecture describes an additional page
    protection mechanism.  Each virtual page has a "class" (0-31) recorded in
    the PTE.  The AMR register contains bits which can prohibit reads and/or
    writes on a class by class basis.  Interestingly, the AMR is userspace
    readable and writable, however user mode writes are masked by the contents
    of the UAMOR which is privileged.
    
    This patch implements this protection mechanism, along with the AMR and
    UAMOR SPRs.  The architecture also specifies a hypervisor-privileged AMOR
    register which masks user and supervisor writes to the AMR and UAMOR.  We
    leave this out for now, since we don't at present model hypervisor mode
    correctly in any case.
    
    Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
    [agraf: fix 32-bit hosts]
    Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
    f80872e2