diff options
Diffstat (limited to 'arch/s390/include/asm/pgtable.h')
-rw-r--r-- | arch/s390/include/asm/pgtable.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/s390/include/asm/pgtable.h b/arch/s390/include/asm/pgtable.h index 75fb726de91f..7a60bb93e83c 100644 --- a/arch/s390/include/asm/pgtable.h +++ b/arch/s390/include/asm/pgtable.h | |||
@@ -1361,6 +1361,17 @@ static inline pmd_t pmd_mkwrite(pmd_t pmd) | |||
1361 | } | 1361 | } |
1362 | #endif /* CONFIG_TRANSPARENT_HUGEPAGE || CONFIG_HUGETLB_PAGE */ | 1362 | #endif /* CONFIG_TRANSPARENT_HUGEPAGE || CONFIG_HUGETLB_PAGE */ |
1363 | 1363 | ||
1364 | static inline void pmdp_flush_lazy(struct mm_struct *mm, | ||
1365 | unsigned long address, pmd_t *pmdp) | ||
1366 | { | ||
1367 | int active = (mm == current->active_mm) ? 1 : 0; | ||
1368 | |||
1369 | if ((atomic_read(&mm->context.attach_count) & 0xffff) > active) | ||
1370 | __pmd_idte(address, pmdp); | ||
1371 | else | ||
1372 | mm->context.flush_mm = 1; | ||
1373 | } | ||
1374 | |||
1364 | #ifdef CONFIG_TRANSPARENT_HUGEPAGE | 1375 | #ifdef CONFIG_TRANSPARENT_HUGEPAGE |
1365 | 1376 | ||
1366 | #define __HAVE_ARCH_PGTABLE_DEPOSIT | 1377 | #define __HAVE_ARCH_PGTABLE_DEPOSIT |