Re: [PATCH] mm: compaction: Fix return value of capture_free_page
From: Dave Hansen <hidden>
Date: 2012-11-26 15:08:06
Also in:
lkml
On 11/26/2012 03:23 AM, Mel Gorman wrote:
On Wed, Nov 21, 2012 at 02:21:51PM -0500, Dave Hansen wrote:quoted
This needs to make it in before 3.7 is released.This is also required. Dave, can you double check? The surprise is that this does not blow up very obviously.
...
quoted hunk ↗ jump to hunk
@@ -1422,7 +1422,7 @@ int capture_free_page(struct page *page, int alloc_order, int migratetype) } } - return 1UL << order; + return 1UL << alloc_order; }
compact_capture_page() only looks at the boolean return value out of capture_free_page(), so it wouldn't notice. split_free_page() does. But, when it calls capture_free_page(), order==alloc_order, so it wouldn't make a difference. So, there's probably no actual bug here, but it's certainly a wrong return value. We should probably also fix the set_pageblock_migratetype() loop in there while we're at it. I think it's potentially trampling on the migration type of pages currently in the allocator. I _think_ that completes the list of things that need to get audited in there. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>