On Thu, Jan 26, 2017 at 02:57:57PM +0300, Kirill A. Shutemov wrote: > Slab pages can be compound, but we shouldn't threat them as THP for > pupose of hpage_* helpers, otherwise it would lead to confusing results. > > For instance, ext4 uses slab pages for journal pages and we shouldn't > confuse them with THPs. The easiest way is to exclude them in hpage_* > helpers. Well ... I think we should just deal with compound pages instead of just huge or regular. So I'm deferring comment on this patch. > Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> > --- > include/linux/huge_mm.h | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/include/linux/huge_mm.h b/include/linux/huge_mm.h > index e5c9c26d2439..5e6c408f5b47 100644 > --- a/include/linux/huge_mm.h > +++ b/include/linux/huge_mm.h > @@ -137,21 +137,21 @@ static inline spinlock_t *pmd_trans_huge_lock(pmd_t *pmd, > } > static inline int hpage_nr_pages(struct page *page) > { > - if (unlikely(PageTransHuge(page))) > + if (unlikely(!PageSlab(page) && PageTransHuge(page))) > return HPAGE_PMD_NR; > return 1; > } > > static inline int hpage_size(struct page *page) > { > - if (unlikely(PageTransHuge(page))) > + if (unlikely(!PageSlab(page) && PageTransHuge(page))) > return HPAGE_PMD_SIZE; > return PAGE_SIZE; > } > > static inline unsigned long hpage_mask(struct page *page) > { > - if (unlikely(PageTransHuge(page))) > + if (unlikely(!PageSlab(page) && PageTransHuge(page))) > return HPAGE_PMD_MASK; > return PAGE_MASK; > } > -- > 2.11.0 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html