Minchan Kim <minchan@xxxxxxxxxx> writes: > MADV_FREE needs pmd_dirty and pmd_mkclean for detecting recent > overwrite of the contents since MADV_FREE syscall is called for > THP page. > > This patch adds pmd_dirty and pmd_mkclean for THP page MADV_FREE > support. > > Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> > Cc: Paul Mackerras <paulus@xxxxxxxxx> > Cc: "Aneesh Kumar K.V" <aneesh.kumar@xxxxxxxxxxxxxxxxxx> > Cc: linuxppc-dev@xxxxxxxxxxxxxxxx Reviewed-by: Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxxxxxxx> > Signed-off-by: Minchan Kim <minchan@xxxxxxxxxx> > --- > arch/powerpc/include/asm/pgtable-ppc64.h | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/arch/powerpc/include/asm/pgtable-ppc64.h b/arch/powerpc/include/asm/pgtable-ppc64.h > index eb9261024f51..c9a4bbe8e179 100644 > --- a/arch/powerpc/include/asm/pgtable-ppc64.h > +++ b/arch/powerpc/include/asm/pgtable-ppc64.h > @@ -468,9 +468,11 @@ static inline pte_t *pmdp_ptep(pmd_t *pmd) > > #define pmd_pfn(pmd) pte_pfn(pmd_pte(pmd)) > #define pmd_young(pmd) pte_young(pmd_pte(pmd)) > +#define pmd_dirty(pmd) pte_dirty(pmd_pte(pmd)) > #define pmd_mkold(pmd) pte_pmd(pte_mkold(pmd_pte(pmd))) > #define pmd_wrprotect(pmd) pte_pmd(pte_wrprotect(pmd_pte(pmd))) > #define pmd_mkdirty(pmd) pte_pmd(pte_mkdirty(pmd_pte(pmd))) > +#define pmd_mkclean(pmd) pte_pmd(pte_mkclean(pmd_pte(pmd))) > #define pmd_mkyoung(pmd) pte_pmd(pte_mkyoung(pmd_pte(pmd))) > #define pmd_mkwrite(pmd) pte_pmd(pte_mkwrite(pmd_pte(pmd))) > > -- > 2.0.0 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>