[PATCH] mm, page_alloc: Split buffered_rmqueue -fix

From: Mel Gorman
Date: Tue Jan 24 2017 - 06:27:36 EST


Vlastimil Babka pointed out that a failed per-cpu refill on a kernel with
CONFIG_DEBUG_VM may blow up on a VM_BUG_ON_PAGE. This patch is a fix
to the mmotm patch mm-page_alloc-split-buffered_rmqueue.patch

Signed-off-by: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx>

diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index c075831c3a1a..5a04636ccc05 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -2697,7 +2697,7 @@ struct page *rmqueue(struct zone *preferred_zone,
local_irq_restore(flags);

out:
- VM_BUG_ON_PAGE(bad_range(zone, page), page);
+ VM_BUG_ON_PAGE(page && bad_range(zone, page), page);
return page;

failed: