Commit ab1f306f authored by Yu Zhao's avatar Yu Zhao Committed by Linus Torvalds
Browse files

mm: verify compound order when freeing a page

This allows us to catch the bug fixed in the previous patch (mm: free
compound page with correct order).

Here we also verify whether a page is tail page or not -- tail pages are
supposed to be freed along with their head, not by themselves.
Signed-off-by: default avatarYu Zhao <>
Reviewed-by: default avatar"Kirill A. Shutemov" <>
Cc: Andrea Arcangeli <>
Cc: Mel Gorman <>
Cc: David Rientjes <>
Cc: Bob Liu <>
Signed-off-by: default avatarAndrew Morton <>
Signed-off-by: default avatarLinus Torvalds <>
parent d7be003a
......@@ -741,6 +741,9 @@ static bool free_pages_prepare(struct page *page, unsigned int order)
int i;
int bad = 0;
VM_BUG_ON_PAGE(PageTail(page), page);
VM_BUG_ON_PAGE(PageHead(page) && compound_order(page) != order, page);
trace_mm_page_free(page, order);
kmemcheck_free_shadow(page, order);
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment