x86: early res print out alignment v2

v2: fix print info to cont

Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Yinghai Lu 2008-06-27 15:36:54 -07:00 committed by Ingo Molnar
parent 22b45144f6
commit ab67715c72

View File

@ -828,16 +828,26 @@ void __init free_early(u64 start, u64 end)
void __init early_res_to_bootmem(u64 start, u64 end)
{
int i;
int i, count;
u64 final_start, final_end;
for (i = 0; i < MAX_EARLY_RES && early_res[i].end; i++) {
count = 0;
for (i = 0; i < MAX_EARLY_RES && early_res[i].end; i++)
count++;
printk(KERN_INFO "(%d early reservations) ==> bootmem\n", count);
for (i = 0; i < count; i++) {
struct early_res *r = &early_res[i];
printk(KERN_INFO " #%d [ %010llx - %010llx ] %16s", i,
r->start, r->end, r->name);
final_start = max(start, r->start);
final_end = min(end, r->end);
if (final_start >= final_end)
if (final_start >= final_end) {
printk(KERN_CONT "\n");
continue;
printk(KERN_INFO " early res: %d [%llx-%llx] %s\n", i,
final_start, final_end - 1, r->name);
}
printk(KERN_CONT " ===> [ %010llx - %010llx ]\n",
final_start, final_end);
reserve_bootmem_generic(final_start, final_end - final_start,
BOOTMEM_DEFAULT);
}