Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 85eb69a1 authored by Ingo Molnar's avatar Ingo Molnar
Browse files

x86: increase the kernel text limit to 512 MB



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: default avatarIngo Molnar <mingo@elte.hu>
parent b4e0409a
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -383,12 +383,12 @@ NEXT_PAGE(level2_ident_pgt)


NEXT_PAGE(level2_kernel_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.
	 * anyway.
	 *
	 *
	 * The kernel code+data+bss must not be bigger than that.
	 * 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
	 *  If you want to increase this then increase MODULES_VADDR
	 *  too.)
	 *  too.)
	 */
	 */
+2 −2
Original line number Original line Diff line number Diff line
@@ -48,10 +48,10 @@
#define __VIRTUAL_MASK_SHIFT	48
#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:
 * 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)
#define KERNEL_IMAGE_START	_AC(0xffffffff80000000, UL)


#ifndef __ASSEMBLY__
#ifndef __ASSEMBLY__
+1 −1
Original line number Original line Diff line number Diff line
@@ -140,7 +140,7 @@ static inline void native_pgd_clear(pgd_t * pgd)
#define VMALLOC_START    _AC(0xffffc20000000000, UL)
#define VMALLOC_START    _AC(0xffffc20000000000, UL)
#define VMALLOC_END      _AC(0xffffe1ffffffffff, UL)
#define VMALLOC_END      _AC(0xffffe1ffffffffff, UL)
#define VMEMMAP_START	 _AC(0xffffe20000000000, 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_END      _AC(0xfffffffffff00000, UL)
#define MODULES_LEN   (MODULES_END - MODULES_VADDR)
#define MODULES_LEN   (MODULES_END - MODULES_VADDR)