[PATCH] x86-64: fix combining of regions in init_memory_mapping()

From: Jan Beulich
Date: Fri Sep 12 2008 - 10:42:47 EST


When nr_range gets decremented, the same slot must be considered for
coalescing with its new successor again.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>

---
arch/x86/mm/init_64.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- linux-2.6.27-rc6/arch/x86/mm/init_64.c 2008-08-29 10:53:00.000000000 +0200
+++ 2.6.27-rc6-x86_64-mr-coalesce/arch/x86/mm/init_64.c 2008-09-12 11:58:45.000000000 +0200
@@ -636,7 +636,7 @@ unsigned long __init_refok init_memory_m
old_start = mr[i].start;
memmove(&mr[i], &mr[i+1],
(nr_range - 1 - i) * sizeof (struct map_range));
- mr[i].start = old_start;
+ mr[i--].start = old_start;
nr_range--;
}




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