aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/e820.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/kernel/e820.c')
-rw-r--r--arch/x86/kernel/e820.c20
1 files changed, 15 insertions, 5 deletions
diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c
index 7b7685b78852..fa77cb4185c3 100644
--- a/arch/x86/kernel/e820.c
+++ b/arch/x86/kernel/e820.c
@@ -828,16 +828,26 @@ void __init free_early(u64 start, u64 end)
828 828
829void __init early_res_to_bootmem(u64 start, u64 end) 829void __init early_res_to_bootmem(u64 start, u64 end)
830{ 830{
831 int i; 831 int i, count;
832 u64 final_start, final_end; 832 u64 final_start, final_end;
833 for (i = 0; i < MAX_EARLY_RES && early_res[i].end; i++) { 833
834 count = 0;
835 for (i = 0; i < MAX_EARLY_RES && early_res[i].end; i++)
836 count++;
837
838 printk(KERN_INFO "(%d early reservations) ==> bootmem\n", count);
839 for (i = 0; i < count; i++) {
834 struct early_res *r = &early_res[i]; 840 struct early_res *r = &early_res[i];
841 printk(KERN_INFO " #%d [ %010llx - %010llx ] %16s", i,
842 r->start, r->end, r->name);
835 final_start = max(start, r->start); 843 final_start = max(start, r->start);
836 final_end = min(end, r->end); 844 final_end = min(end, r->end);
837 if (final_start >= final_end) 845 if (final_start >= final_end) {
846 printk(KERN_CONT "\n");
838 continue; 847 continue;
839 printk(KERN_INFO " early res: %d [%llx-%llx] %s\n", i, 848 }
840 final_start, final_end - 1, r->name); 849 printk(KERN_CONT " ===> [ %010llx - %010llx ]\n",
850 final_start, final_end);
841 reserve_bootmem_generic(final_start, final_end - final_start, 851 reserve_bootmem_generic(final_start, final_end - final_start,
842 BOOTMEM_DEFAULT); 852 BOOTMEM_DEFAULT);
843 } 853 }