On Thu, Feb 13, 2020 at 05:11:07PM +0300, Kirill A. Shutemov wrote: > On Tue, Feb 11, 2020 at 08:18:26PM -0800, Matthew Wilcox wrote: > > From: "Matthew Wilcox (Oracle)" <willy@xxxxxxxxxxxxx> > > > > Remove the assumption in hpage_nr_pages() that compound pages are > > necessarily PMD sized. The return type needs to be signed as we need > > to use the negative value, eg when calling update_lru_size(). > > But should it be long? > Any reason to use macros instead of inline function? Huh, that does look like a bit of a weird change now you point it out. I'll change it back: static inline int hpage_nr_pages(struct page *page) { - if (unlikely(PageTransHuge(page))) - return HPAGE_PMD_NR; - return 1; + return compound_nr(page); }