diff options
author | Alexander van Heukelum <heukelum@mailshack.com> | 2008-03-04 18:57:42 (GMT) |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-04-17 15:40:52 (GMT) |
commit | 2fde61fdb00c2337efc56cfbb05bde8a42864e65 (patch) | |
tree | 1bb0c42e59c9e045cc8621438581bde40aee6659 /arch/x86 | |
parent | 0d7a1819e97ef89be5bcbb4b724acb9f6c873c97 (diff) | |
download | linux-2fde61fdb00c2337efc56cfbb05bde8a42864e65.tar.xz |
x86: reserve end-of-conventional-memory to 1MB, 32-bit, use paravirt_enabled
Jeremy Fitzhardinge pointed out that looking at the boot_params
struct to determine if the system is running in a paravirtual
environment is not reliable for the Xen case, currently. He also
points out that there already exists a function to determine if
the system is running in a paravirtual environment. So let's use
that instead. This gets rid of the preprocessor test too.
Signed-off-by: Alexander van Heukelum <heukelum@fastmail.fm>
Acked-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86')
-rw-r--r-- | arch/x86/kernel/setup_32.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/x86/kernel/setup_32.c b/arch/x86/kernel/setup_32.c index 14e293e..fd639d9 100644 --- a/arch/x86/kernel/setup_32.c +++ b/arch/x86/kernel/setup_32.c @@ -64,6 +64,7 @@ #include <setup_arch.h> #include <bios_ebda.h> #include <asm/cacheflush.h> +#include <asm/processor.h> /* This value is set up by the early boot code to point to the value immediately after the boot time page tables. It contains a *physical* @@ -408,12 +409,8 @@ static void __init reserve_ebda_region(void) /* that area is absent. We'll just have to assume */ /* that the paravirt case can handle memory setup */ /* correctly, without our help. */ -#ifdef CONFIG_PARAVIRT - if ((boot_params.hdr.version >= 0x207) && - (boot_params.hdr.hardware_subarch != 0)) { + if (paravirt_enabled()) return; - } -#endif /* end of low (conventional) memory */ lowmem = *(unsigned short *)__va(BIOS_LOWMEM_KILOBYTES); |