Re: [PATCH 05/16] page-flags: define behavior of FS/IO-related flags on compound pages

From: Hugh Dickins
Date: Wed Mar 25 2015 - 14:57:23 EST


On Wed, 25 Mar 2015, Kirill A. Shutemov wrote:
>
> We only need tail refcounting for THP, so I think this should fix the issue:
>
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index 4a3a38522ab4..9ab432660adb 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -456,7 +456,7 @@ static inline int page_count(struct page *page)
>
> static inline bool __compound_tail_refcounted(struct page *page)
> {
> - return !PageSlab(page) && !PageHeadHuge(page);
> + return !PageSlab(page) && !PageHeadHuge(page) && PageAnon(page);
> }
>
> /*

Yes, that should be a good fix for the mapcount issue.
And no coincidence that it's just what I needed too,
when reusing the PG_compound_lock bit: see my 10/24
(which had to rearrange mm.h. not having your 1/16).

Hugh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/