Just check for enforce parameter in PF_ONLY_HEAD() wrapper before calling VM_BUG_ON_PGFLAGS() for tail pages. Fixes: 62906027091f ("mm: add PageWaiters indicating tasks are waiting for a page bit") Signed-off-by: Anshuman Khandual <anshuman.khandual@xxxxxxx> --- include/linux/page-flags.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h index 9f8712a4b1a5..82539e287bc6 100644 --- a/include/linux/page-flags.h +++ b/include/linux/page-flags.h @@ -229,7 +229,7 @@ static inline void page_init_poison(struct page *page, size_t size) #define PF_ANY(page, enforce) PF_POISONED_CHECK(page) #define PF_HEAD(page, enforce) PF_POISONED_CHECK(compound_head(page)) #define PF_ONLY_HEAD(page, enforce) ({ \ - VM_BUG_ON_PGFLAGS(PageTail(page), page); \ + VM_BUG_ON_PGFLAGS(enforce && PageTail(page), page); \ PF_POISONED_CHECK(page); }) #define PF_NO_TAIL(page, enforce) ({ \ VM_BUG_ON_PGFLAGS(enforce && PageTail(page), page); \ -- 2.20.1