]> Pileus Git - ~andy/linux/blobdiff - mm/pgtable-generic.c
Merge git://git.infradead.org/users/dwmw2/atm
[~andy/linux] / mm / pgtable-generic.c
index 29867e083d37277a10327afaa4eccb53df37ca36..e642627da6b75d7c6cf5258a59cfde49dca7c89e 100644 (file)
@@ -159,3 +159,14 @@ pgtable_t pgtable_trans_huge_withdraw(struct mm_struct *mm)
 }
 #endif /* CONFIG_TRANSPARENT_HUGEPAGE */
 #endif
+
+#ifndef __HAVE_ARCH_PMDP_INVALIDATE
+#ifdef CONFIG_TRANSPARENT_HUGEPAGE
+void pmdp_invalidate(struct vm_area_struct *vma, unsigned long address,
+                    pmd_t *pmdp)
+{
+       set_pmd_at(vma->vm_mm, address, pmdp, pmd_mknotpresent(*pmdp));
+       flush_tlb_range(vma, address, address + HPAGE_PMD_SIZE);
+}
+#endif /* CONFIG_TRANSPARENT_HUGEPAGE */
+#endif