The e820_reserve_setup_data() is local to arch/x86/kernel/setup.c,
but it is E820 functionality - so move it to e820.c to better
isolate E820 functionality.

No change in functionality.

Cc: Alex Thorlton <[email protected]>
Cc: Andy Lutomirski <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Brian Gerst <[email protected]>
Cc: Dan Williams <[email protected]>
Cc: Denys Vlasenko <[email protected]>
Cc: H. Peter Anvin <[email protected]>
Cc: Huang, Ying <[email protected]>
Cc: Josh Poimboeuf <[email protected]>
Cc: Juergen Gross <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Paul Jackson <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Rafael J. Wysocki <[email protected]>
Cc: Tejun Heo <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Wei Yang <[email protected]>
Cc: Yinghai Lu <[email protected]>
Cc: [email protected]
Signed-off-by: Ingo Molnar <[email protected]>
---
 arch/x86/include/asm/e820/api.h |  1 +
 arch/x86/kernel/e820.c          | 22 ++++++++++++++++++++++
 arch/x86/kernel/setup.c         | 23 -----------------------
 3 files changed, 23 insertions(+), 23 deletions(-)

diff --git a/arch/x86/include/asm/e820/api.h b/arch/x86/include/asm/e820/api.h
index 8c9c6054dec1..23019a696fcd 100644
--- a/arch/x86/include/asm/e820/api.h
+++ b/arch/x86/include/asm/e820/api.h
@@ -22,6 +22,7 @@ extern unsigned long e820_end_of_ram_pfn(void);
 extern unsigned long e820_end_of_low_ram_pfn(void);
 extern u64  early_reserve_e820(u64 sizet, u64 align);
 extern void e820__memblock_setup(void);
+extern void e820_reserve_setup_data(void);
 extern void finish_e820_parsing(void);
 extern void e820_reserve_resources(void);
 extern void e820_reserve_resources_late(void);
diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c
index d24c0f2b4a1c..79b9401bbbea 100644
--- a/arch/x86/kernel/e820.c
+++ b/arch/x86/kernel/e820.c
@@ -910,6 +910,28 @@ static int __init parse_memmap_opt(char *str)
 }
 early_param("memmap", parse_memmap_opt);
 
+void __init e820_reserve_setup_data(void)
+{
+       struct setup_data *data;
+       u64 pa_data;
+
+       pa_data = boot_params.hdr.setup_data;
+       if (!pa_data)
+               return;
+
+       while (pa_data) {
+               data = early_memremap(pa_data, sizeof(*data));
+               e820_update_range(pa_data, sizeof(*data)+data->len, E820_RAM, 
E820_RESERVED_KERN);
+               pa_data = data->next;
+               early_memunmap(data, sizeof(*data));
+       }
+
+       sanitize_e820_table(e820_table->entries, 
ARRAY_SIZE(e820_table->entries), &e820_table->nr_entries);
+       memcpy(e820_table_firmware, e820_table, sizeof(struct e820_table));
+       printk(KERN_INFO "extended physical RAM map:\n");
+       e820_print_map("reserve setup_data");
+}
+
 void __init finish_e820_parsing(void)
 {
        if (userdef) {
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index 4451c3a818db..7954159f0d27 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -441,29 +441,6 @@ static void __init parse_setup_data(void)
        }
 }
 
-static void __init e820_reserve_setup_data(void)
-{
-       struct setup_data *data;
-       u64 pa_data;
-
-       pa_data = boot_params.hdr.setup_data;
-       if (!pa_data)
-               return;
-
-       while (pa_data) {
-               data = early_memremap(pa_data, sizeof(*data));
-               e820_update_range(pa_data, sizeof(*data)+data->len,
-                        E820_RAM, E820_RESERVED_KERN);
-               pa_data = data->next;
-               early_memunmap(data, sizeof(*data));
-       }
-
-       sanitize_e820_table(e820_table->entries, 
ARRAY_SIZE(e820_table->entries), &e820_table->nr_entries);
-       memcpy(e820_table_firmware, e820_table, sizeof(struct e820_table));
-       printk(KERN_INFO "extended physical RAM map:\n");
-       e820_print_map("reserve setup_data");
-}
-
 static void __init memblock_x86_reserve_range_setup_data(void)
 {
        struct setup_data *data;
-- 
2.7.4

Reply via email to