aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-powerpc/pgtable-ppc64.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-powerpc/pgtable-ppc64.h')
-rw-r--r--include/asm-powerpc/pgtable-ppc64.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/asm-powerpc/pgtable-ppc64.h b/include/asm-powerpc/pgtable-ppc64.h
index cc6a43ba41d0..7686569a0bef 100644
--- a/include/asm-powerpc/pgtable-ppc64.h
+++ b/include/asm-powerpc/pgtable-ppc64.h
@@ -314,6 +314,16 @@ static inline void ptep_set_wrprotect(struct mm_struct *mm, unsigned long addr,
314 old = pte_update(mm, addr, ptep, _PAGE_RW, 0); 314 old = pte_update(mm, addr, ptep, _PAGE_RW, 0);
315} 315}
316 316
317static inline void huge_ptep_set_wrprotect(struct mm_struct *mm,
318 unsigned long addr, pte_t *ptep)
319{
320 unsigned long old;
321
322 if ((pte_val(*ptep) & _PAGE_RW) == 0)
323 return;
324 old = pte_update(mm, addr, ptep, _PAGE_RW, 1);
325}
326
317/* 327/*
318 * We currently remove entries from the hashtable regardless of whether 328 * We currently remove entries from the hashtable regardless of whether
319 * the entry was young or dirty. The generic routines only flush if the 329 * the entry was young or dirty. The generic routines only flush if the