Re: Need help in bug in isolate_migratepages_range

From: David Rientjes
Date: Mon Feb 03 2014 - 19:07:01 EST


On Mon, 3 Feb 2014, Vlastimil Babka wrote:

> It seems to come from balloon_page_movable() and its test page_count(page) ==
> 1.
>

Hmm, I think it might be because compound_head() == NULL here. Holger,
this looks like a race condition when allocating a compound page, did you
only see it once or is it actually reproducible?

I think this happens when a new compound page is allocated and PageBuddy
is cleared before prep_compound_page() and then we see PageTail(p) set but
p->first_page is not yet initialized. Is there any way to avoid memory
barriers in compound_page()?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/