Patch 1-2 fix a cache flush bug, because subsequent patches depend on those on those changes, there are placed in this series. Patch 3-4 are preparation for fixing a dax bug in patch 5. Patch 6 is code cleanup since the previous patch remove the usage of follow_invalidate_pte(). Changes in v2: - Avoid the overly long line in lots of places suggested by Christoph. - Fix a compiler warning reported by kernel test robot since pmd_pfn() is not defined when !CONFIG_TRANSPARENT_HUGEPAGE on powerpc architecture. - Split a new patch 4 for preparation of fixing the dax bug. Muchun Song (6): mm: rmap: fix cache flush on THP pages dax: fix cache flush on PMD-mapped pages mm: page_vma_mapped: support checking if a pfn is mapped into a vma mm: rmap: introduce pfn_mkclean_range() to cleans PTEs dax: fix missing writeprotect the pte entry mm: remove range parameter from follow_invalidate_pte() fs/dax.c | 82 ++++------------------------------------------ include/linux/mm.h | 3 -- include/linux/rmap.h | 17 ++++++++-- include/linux/swapops.h | 13 +++++--- mm/internal.h | 52 +++++++++++++++++++---------- mm/memory.c | 23 ++----------- mm/page_vma_mapped.c | 68 ++++++++++++++++++++++++-------------- mm/rmap.c | 87 ++++++++++++++++++++++++++++++++++++++----------- 8 files changed, 180 insertions(+), 165 deletions(-) -- 2.11.0