===================================================================
@@ -79,9 +79,16 @@ static void __init drop_range_partial(in
/* make head segment */
early_res[i].end = common_start;
if (old_end > common_end) {
+ char name[15];
+
+ /*
+ * Save name aside, in reserve_early_ have allocated
+ * and new early_res array because auto double
+ */
+ strncpy(name, early_res[i].name,
+ sizeof(early_res[i].name) - 1);
/* add another for left over on tail */
- reserve_early_without_check(common_end, old_end,
- early_res[i].name);
+ reserve_early_without_check(common_end, old_end, name);
}
return;
} else {