Re: [PATCH] mm/page_alloc: fix the range check for backwardmerging

From: David Rientjes
Date: Mon Jan 04 2010 - 16:02:37 EST


On Sun, 3 Jan 2010, Kazuhisa Ichikawa wrote:

> From: Kazuhisa Ichikawa <ki@xxxxxxxxxxx>
>
> The current check for 'backward merging' within add_active_range()
> does not seem correct. start_pfn must be compared against
> early_node_map[i].start_pfn (and NOT against .end_pfn) to find out
> whether the new region is backward-mergeable with the existing range.
>
> Signed-off-by: Kazuhisa Ichikawa <ki@xxxxxxxxxxx>
> ---
> (This patch applies to linux-2.6.33-rc2)
>
> --- a/mm/page_alloc.c 2009-12-25 06:09:41.000000000 +0900
> +++ b/mm/page_alloc.c 2010-01-03 19:20:36.000000000 +0900
> @@ -3998,7 +3998,7 @@ void __init add_active_range(unsigned in
> }
>
> /* Merge backward if suitable */
> - if (start_pfn < early_node_map[i].end_pfn &&
> + if (start_pfn < early_node_map[i].start_pfn &&
> end_pfn >= early_node_map[i].start_pfn) {
> early_node_map[i].start_pfn = start_pfn;
> return;

Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
--
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/