diff options
author | Richard Braun <rbraun@sceen.net> | 2013-05-24 02:16:21 +0200 |
---|---|---|
committer | Richard Braun <rbraun@sceen.net> | 2013-05-24 20:37:53 +0200 |
commit | 84675b4ba694b482cef49c497cad4adc8e42addd (patch) | |
tree | c2ac0267540589b6538de3776be09de2e54a5a6b | |
parent | 02dee35e91a3d62c77d9affb61308c0ad4597c73 (diff) |
x86/param: update kernel space end address on i386
The kernel image is loaded where the kernel space ends. The previous end
address left 2 MiB to the kernel image. Since boot stacks are now statically
allocated, a kernel configured for a large number of processors would
overflow the area reserved for the kernel image. Reduce the kernel space
end address so that 64 MiB are now available for the kernel image.
-rw-r--r-- | arch/x86/machine/param.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/x86/machine/param.h b/arch/x86/machine/param.h index 41861398..e7612441 100644 --- a/arch/x86/machine/param.h +++ b/arch/x86/machine/param.h @@ -110,10 +110,16 @@ */ #define VM_MIN_KERNEL_ADDRESS (VM_PMAP_PTEMAP_ADDRESS + VM_PMAP_PTEMAP_SIZE) +/* + * In addition to being the end of the kernel address space, this is also + * where the kernel image is loaded. Excluding the kernel image from its + * address space simplifies bootstrapping, and also saves a static VM map + * entry. + */ #ifdef __LP64__ #define VM_MAX_KERNEL_ADDRESS DECL_CONST(0xffffffff80000000, UL) #else /* __LP64__ */ -#define VM_MAX_KERNEL_ADDRESS DECL_CONST(0xffe00000, UL) +#define VM_MAX_KERNEL_ADDRESS DECL_CONST(0xfc000000, UL) #endif /* __LP64__ */ /* |