x86: do not printout if we do not find setup_data
authorYinghai Lu <yhlu.kernel@gmail.com>
Wed, 2 Jul 2008 03:04:10 +0000 (20:04 -0700)
committerIngo Molnar <mingo@elte.hu>
Tue, 8 Jul 2008 11:16:22 +0000 (13:16 +0200)
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/setup.c

index b346989..4ac01d0 100644 (file)
@@ -399,6 +399,7 @@ static void __init reserve_setup_data(void)
        struct setup_data *data;
        u64 pa_data;
        char buf[32];
+       int found = 0;
 
        if (boot_params.hdr.version < 0x0209)
                return;
@@ -409,9 +410,13 @@ static void __init reserve_setup_data(void)
                reserve_early(pa_data, pa_data+sizeof(*data)+data->len, buf);
                e820_update_range(pa_data, sizeof(*data)+data->len,
                         E820_RAM, E820_RESERVED_KERN);
+               found = 1;
                pa_data = data->next;
                early_iounmap(data, sizeof(*data));
        }
+       if (!found)
+               return;
+
        sanitize_e820_map(e820.map, ARRAY_SIZE(e820.map), &e820.nr_map);
        printk(KERN_INFO "extended physical RAM map:\n");
        e820_print_map("reserve setup_data");