On Wed, Mar 04, 2015 at 12:48:54PM -0600, Christoph Lameter wrote: > On Wed, 4 Mar 2015, Kirill A. Shutemov wrote: > > > index c851ff92d5b3..58b98bced299 100644 > > --- a/include/linux/page-flags.h > > +++ b/include/linux/page-flags.h > > @@ -207,7 +207,8 @@ static inline int __TestClearPage##uname(struct page *page) { return 0; } > > > > struct page; /* forward declaration */ > > > > -TESTPAGEFLAG(Locked, locked) > > +#define PageLocked(page) test_bit(PG_locked, &compound_head(page)->flags) > > + > > PAGEFLAG(Error, error) TESTCLEARFLAG(Error, error) > > Hmmm... Now one of the pageflag functions operates on the head page unlike > the other pageflag functions that only operate on the flag indicated. > > Given that pageflags provide a way to implement checks for head / tail > pages this seems to be a bad idea. I agree, I need to take more systematic look on page flags vs. compound pages. I'll try to come up with something before the summit. -- Kirill A. Shutemov -- 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>