Skip to content
  • David Gibson's avatar
    mmu-hash*: Don't update PTE flags when permission is denied · 87dc3fd1
    David Gibson authored
    
    
    BEHAVIOUR CHANGE
    
    Currently if ppc_hash{32,64}_translate() finds a PTE matching the given
    virtual address, it will always update the PTE's R & C (Referenced and
    Changed) bits.  This happens even if the PTE's permissions mean we are
    about to deny the translation.
    
    This is clearly a bug, although we get away with it because:
      a) It will only incorrectly set, never reset the bits, which should not
    cause guest correctness problems.
      b) Linux guests never use the R & C bits anyway.
    
    This patch fixes the behaviour, only updating R & C when access is granted
    by the PTE.
    
    Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
    Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
    87dc3fd1