diff options
Diffstat (limited to 'arch/s390/mm/pgtable.c')
-rw-r--r-- | arch/s390/mm/pgtable.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/s390/mm/pgtable.c b/arch/s390/mm/pgtable.c index d4d409ba206b..4a1f7366b17a 100644 --- a/arch/s390/mm/pgtable.c +++ b/arch/s390/mm/pgtable.c | |||
@@ -591,11 +591,11 @@ void ptep_zap_key(struct mm_struct *mm, unsigned long addr, pte_t *ptep) | |||
591 | unsigned long ptev; | 591 | unsigned long ptev; |
592 | pgste_t pgste; | 592 | pgste_t pgste; |
593 | 593 | ||
594 | /* Clear storage key */ | 594 | /* Clear storage key ACC and F, but set R/C */ |
595 | preempt_disable(); | 595 | preempt_disable(); |
596 | pgste = pgste_get_lock(ptep); | 596 | pgste = pgste_get_lock(ptep); |
597 | pgste_val(pgste) &= ~(PGSTE_ACC_BITS | PGSTE_FP_BIT | | 597 | pgste_val(pgste) &= ~(PGSTE_ACC_BITS | PGSTE_FP_BIT); |
598 | PGSTE_GR_BIT | PGSTE_GC_BIT); | 598 | pgste_val(pgste) |= PGSTE_GR_BIT | PGSTE_GC_BIT; |
599 | ptev = pte_val(*ptep); | 599 | ptev = pte_val(*ptep); |
600 | if (!(ptev & _PAGE_INVALID) && (ptev & _PAGE_WRITE)) | 600 | if (!(ptev & _PAGE_INVALID) && (ptev & _PAGE_WRITE)) |
601 | page_set_storage_key(ptev & PAGE_MASK, PAGE_DEFAULT_KEY, 1); | 601 | page_set_storage_key(ptev & PAGE_MASK, PAGE_DEFAULT_KEY, 1); |