aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/i386/Kconfig16
-rw-r--r--arch/i386/kernel/setup.c8
2 files changed, 15 insertions, 9 deletions
diff --git a/arch/i386/Kconfig b/arch/i386/Kconfig
index 361aca8b3ec3..0790bdf8c1f1 100644
--- a/arch/i386/Kconfig
+++ b/arch/i386/Kconfig
@@ -548,6 +548,7 @@ config HIGHMEM4G
548config HIGHMEM64G 548config HIGHMEM64G
549 bool "64GB" 549 bool "64GB"
550 depends on !M386 && !M486 550 depends on !M386 && !M486
551 select X86_PAE
551 help 552 help
552 Select this if you have a 32-bit processor and more than 4 553 Select this if you have a 32-bit processor and more than 4
553 gigabytes of physical RAM. 554 gigabytes of physical RAM.
@@ -577,12 +578,12 @@ choice
577 config VMSPLIT_3G 578 config VMSPLIT_3G
578 bool "3G/1G user/kernel split" 579 bool "3G/1G user/kernel split"
579 config VMSPLIT_3G_OPT 580 config VMSPLIT_3G_OPT
580 depends on !HIGHMEM 581 depends on !X86_PAE
581 bool "3G/1G user/kernel split (for full 1G low memory)" 582 bool "3G/1G user/kernel split (for full 1G low memory)"
582 config VMSPLIT_2G 583 config VMSPLIT_2G
583 bool "2G/2G user/kernel split" 584 bool "2G/2G user/kernel split"
584 config VMSPLIT_2G_OPT 585 config VMSPLIT_2G_OPT
585 depends on !HIGHMEM 586 depends on !X86_PAE
586 bool "2G/2G user/kernel split (for full 2G low memory)" 587 bool "2G/2G user/kernel split (for full 2G low memory)"
587 config VMSPLIT_1G 588 config VMSPLIT_1G
588 bool "1G/3G user/kernel split" 589 bool "1G/3G user/kernel split"
@@ -602,10 +603,15 @@ config HIGHMEM
602 default y 603 default y
603 604
604config X86_PAE 605config X86_PAE
605 bool 606 bool "PAE (Physical Address Extension) Support"
606 depends on HIGHMEM64G 607 default n
607 default y 608 depends on !HIGHMEM4G
608 select RESOURCES_64BIT 609 select RESOURCES_64BIT
610 help
611 PAE is required for NX support, and furthermore enables
612 larger swapspace support for non-overcommit purposes. It
613 has the cost of more pagetable lookup overhead, and also
614 consumes more pagetable space per process.
609 615
610# Common NUMA Features 616# Common NUMA Features
611config NUMA 617config NUMA
diff --git a/arch/i386/kernel/setup.c b/arch/i386/kernel/setup.c
index 2986b48a823f..d474cd639bcb 100644
--- a/arch/i386/kernel/setup.c
+++ b/arch/i386/kernel/setup.c
@@ -273,18 +273,18 @@ unsigned long __init find_max_low_pfn(void)
273 printk(KERN_WARNING "Warning only %ldMB will be used.\n", 273 printk(KERN_WARNING "Warning only %ldMB will be used.\n",
274 MAXMEM>>20); 274 MAXMEM>>20);
275 if (max_pfn > MAX_NONPAE_PFN) 275 if (max_pfn > MAX_NONPAE_PFN)
276 printk(KERN_WARNING "Use a PAE enabled kernel.\n"); 276 printk(KERN_WARNING "Use a HIGHMEM64G enabled kernel.\n");
277 else 277 else
278 printk(KERN_WARNING "Use a HIGHMEM enabled kernel.\n"); 278 printk(KERN_WARNING "Use a HIGHMEM enabled kernel.\n");
279 max_pfn = MAXMEM_PFN; 279 max_pfn = MAXMEM_PFN;
280#else /* !CONFIG_HIGHMEM */ 280#else /* !CONFIG_HIGHMEM */
281#ifndef CONFIG_X86_PAE 281#ifndef CONFIG_HIGHMEM64G
282 if (max_pfn > MAX_NONPAE_PFN) { 282 if (max_pfn > MAX_NONPAE_PFN) {
283 max_pfn = MAX_NONPAE_PFN; 283 max_pfn = MAX_NONPAE_PFN;
284 printk(KERN_WARNING "Warning only 4GB will be used.\n"); 284 printk(KERN_WARNING "Warning only 4GB will be used.\n");
285 printk(KERN_WARNING "Use a PAE enabled kernel.\n"); 285 printk(KERN_WARNING "Use a HIGHMEM64G enabled kernel.\n");
286 } 286 }
287#endif /* !CONFIG_X86_PAE */ 287#endif /* !CONFIG_HIGHMEM64G */
288#endif /* !CONFIG_HIGHMEM */ 288#endif /* !CONFIG_HIGHMEM */
289 } else { 289 } else {
290 if (highmem_pages == -1) 290 if (highmem_pages == -1)