diff --git a/arch/s390/mm/vmem.c b/arch/s390/mm/vmem.c index 2020ef8c041339dfa1aaf9c53e973dc616f4a18f..4badd8252e3c73043b1d64e62fc5dc48c37e4ee9 100644 --- a/arch/s390/mm/vmem.c +++ b/arch/s390/mm/vmem.c @@ -148,9 +148,7 @@ static void vmem_remove_range(unsigned long start, unsigned long size) pud_t *pu_dir; pmd_t *pm_dir; pte_t *pt_dir; - pte_t pte; - pte_val(pte) = _PAGE_INVALID; while (address < end) { pg_dir = pgd_offset_k(address); if (pgd_none(*pg_dir)) { @@ -178,7 +176,7 @@ static void vmem_remove_range(unsigned long start, unsigned long size) continue; } pt_dir = pte_offset_kernel(pm_dir, address); - *pt_dir = pte; + pte_clear(&init_mm, address, pt_dir); address += PAGE_SIZE; } flush_tlb_kernel_range(start, end);