Skip to content

Commit

Permalink
x86: increase the kernel text limit to 512 MB
Browse files Browse the repository at this point in the history
people sometimes do crazy stuff like building really large static
arrays into their kernels or building allyesconfig kernels. Give
more space to the kernel and push modules up a bit: kernel has
512 MB and modules have 1.5 GB.

Should be enough for a few years ;-)

Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
Ingo Molnar committed Apr 17, 2008
1 parent b4e0409 commit 85eb69a
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 5 deletions.
4 changes: 2 additions & 2 deletions arch/x86/kernel/head_64.S
Original file line number Diff line number Diff line change
Expand Up @@ -383,12 +383,12 @@ NEXT_PAGE(level2_ident_pgt)

NEXT_PAGE(level2_kernel_pgt)
/*
* 128 MB kernel mapping. We spend a full page on this pagetable
* 512 MB kernel mapping. We spend a full page on this pagetable
* anyway.
*
* The kernel code+data+bss must not be bigger than that.
*
* (NOTE: at +128MB starts the module area, see MODULES_VADDR.
* (NOTE: at +512MB starts the module area, see MODULES_VADDR.
* If you want to increase this then increase MODULES_VADDR
* too.)
*/
Expand Down
4 changes: 2 additions & 2 deletions include/asm-x86/page_64.h
Original file line number Diff line number Diff line change
Expand Up @@ -48,10 +48,10 @@
#define __VIRTUAL_MASK_SHIFT 48

/*
* Kernel image size is limited to 128 MB (see level2_kernel_pgt in
* Kernel image size is limited to 512 MB (see level2_kernel_pgt in
* arch/x86/kernel/head_64.S), and it is mapped here:
*/
#define KERNEL_IMAGE_SIZE (128*1024*1024)
#define KERNEL_IMAGE_SIZE (512*1024*1024)
#define KERNEL_IMAGE_START _AC(0xffffffff80000000, UL)

#ifndef __ASSEMBLY__
Expand Down
2 changes: 1 addition & 1 deletion include/asm-x86/pgtable_64.h
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ static inline void native_pgd_clear(pgd_t * pgd)
#define VMALLOC_START _AC(0xffffc20000000000, UL)
#define VMALLOC_END _AC(0xffffe1ffffffffff, UL)
#define VMEMMAP_START _AC(0xffffe20000000000, UL)
#define MODULES_VADDR _AC(0xffffffff88000000, UL)
#define MODULES_VADDR _AC(0xffffffffa0000000, UL)
#define MODULES_END _AC(0xfffffffffff00000, UL)
#define MODULES_LEN (MODULES_END - MODULES_VADDR)

Expand Down

0 comments on commit 85eb69a

Please sign in to comment.