Re: [PATCH 2/4] mm/page_alloc: expands broken freepage to proper buddy list when steal

From: Vlastimil Babka
Date: Wed Dec 10 2014 - 04:55:13 EST


On 12/10/2014 07:38 AM, Joonsoo Kim wrote:
On Mon, Dec 08, 2014 at 10:29:44AM +0100, Vlastimil Babka wrote:
On 12/08/2014 08:16 AM, Joonsoo Kim wrote:
There is odd behaviour when we steal freepages from other migratetype
buddy list. In try_to_steal_freepages(), we move all freepages in
the pageblock that founded freepage is belong to to the request
migratetype in order to mitigate fragmentation. If the number of moved
pages are enough to change pageblock migratetype, there is no problem. If
not enough, we don't change pageblock migratetype and add broken freepages
to the original migratetype buddy list rather than request migratetype
one. For me, this is odd, because we already moved all freepages in this
pageblock to the request migratetype. This patch fixes this situation to
add broken freepages to the request migratetype buddy list in this case.

I'd rather split the fix from the refactoring. And maybe my
description is longer, but easier to understand? (I guess somebody
else should judge this)

Your patch is much better to understand than mine. :)
No need to judge from somebody else.
After your patch is merged, I will resubmit these on top of it.

Thanks. I'm doing another evaluation focusing on number of unmovable pageblocks as Mel suggested and then resubmit with tracepoint fixed.

Vlastimil
--
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/