diff options
author | Glauber de Oliveira Costa <gcosta@redhat.com> | 2008-01-30 07:31:11 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-01-30 07:31:11 -0500 |
commit | 746ef0cd0c7190d570c65b8e39a4ac67550ae43a (patch) | |
tree | f28b0168786b0a086c1d93b072fb854bafffd9fb /arch/x86/kernel/e820_64.c | |
parent | ba082427ae6ffbf8e48a26ae4f72f4501a6b80c1 (diff) |
x86: prepare 64-bit architecture initialization for paravirt
This patch prepares the x86_64 architecture initialization for
paravirt. It requires a memory initialization step, which is done
by implementing 64-bit version for machine_specific_memory_setup,
and putting an ARCH_SETUP hook, for guest-dependent initialization.
This last step is done akin to i386
Signed-off-by: Glauber de Oliveira Costa <gcosta@redhat.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Acked-by: Jeremy Fitzhardinge <jeremy@xensource.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/kernel/e820_64.c')
-rw-r--r-- | arch/x86/kernel/e820_64.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/x86/kernel/e820_64.c b/arch/x86/kernel/e820_64.c index 8e7321101a0a..abc473bcabe8 100644 --- a/arch/x86/kernel/e820_64.c +++ b/arch/x86/kernel/e820_64.c | |||
@@ -638,8 +638,10 @@ static void early_panic(char *msg) | |||
638 | panic(msg); | 638 | panic(msg); |
639 | } | 639 | } |
640 | 640 | ||
641 | void __init setup_memory_region(void) | 641 | /* We're not void only for x86 32-bit compat */ |
642 | char * __init machine_specific_memory_setup(void) | ||
642 | { | 643 | { |
644 | char *who = "BIOS-e820"; | ||
643 | /* | 645 | /* |
644 | * Try to copy the BIOS-supplied E820-map. | 646 | * Try to copy the BIOS-supplied E820-map. |
645 | * | 647 | * |
@@ -650,7 +652,10 @@ void __init setup_memory_region(void) | |||
650 | if (copy_e820_map(boot_params.e820_map, boot_params.e820_entries) < 0) | 652 | if (copy_e820_map(boot_params.e820_map, boot_params.e820_entries) < 0) |
651 | early_panic("Cannot find a valid memory map"); | 653 | early_panic("Cannot find a valid memory map"); |
652 | printk(KERN_INFO "BIOS-provided physical RAM map:\n"); | 654 | printk(KERN_INFO "BIOS-provided physical RAM map:\n"); |
653 | e820_print_map("BIOS-e820"); | 655 | e820_print_map(who); |
656 | |||
657 | /* In case someone cares... */ | ||
658 | return who; | ||
654 | } | 659 | } |
655 | 660 | ||
656 | static int __init parse_memopt(char *p) | 661 | static int __init parse_memopt(char *p) |