mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 11:11:45 -04:00
powerpc/mm: Use _PAGE_READ to indicate Read access
This splits the _PAGE_RW bit into _PAGE_READ and _PAGE_WRITE. It also
removes the dependency on _PAGE_USER for implying read only. Few things
to note here is that, we have read implied with write and execute
permission. Hence we should always find _PAGE_READ set on hash pte
fault.
We still can't switch PROT_NONE to !(_PAGE_RWX). Auto numa depends on
marking a prot none pte _PAGE_WRITE. (For more details look at
b191f9b106 "mm: numa: preserve PTE write permissions across a NUMA
hinting fault")
Cc: Arnd Bergmann <[email protected]>
Cc: Jeremy Kerr <[email protected]>
Cc: Frederic Barrat <[email protected]>
Acked-by: Ian Munsie <[email protected]>
Signed-off-by: Aneesh Kumar K.V <[email protected]>
Signed-off-by: Michael Ellerman <[email protected]>
This commit is contained in:
parent
ee3caed37d
commit
c7d54842de
14 changed files with 49 additions and 37 deletions
|
|
@ -149,9 +149,9 @@ static void cxl_handle_page_fault(struct cxl_context *ctx,
|
|||
* update_mmu_cache() will not have loaded the hash since current->trap
|
||||
* is not a 0x400 or 0x300, so just call hash_page_mm() here.
|
||||
*/
|
||||
access = _PAGE_PRESENT;
|
||||
access = _PAGE_PRESENT | _PAGE_READ;
|
||||
if (dsisr & CXL_PSL_DSISR_An_S)
|
||||
access |= _PAGE_RW;
|
||||
access |= _PAGE_WRITE;
|
||||
if ((!ctx->kernel) || (REGION_ID(dar) == USER_REGION_ID))
|
||||
access |= _PAGE_USER;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue