aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@novell.com>2007-07-21 11:10:26 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-21 21:37:09 -0400
commitd5321abe6abd16e1749ccd89636415d39611e138 (patch)
treee9f845273999579fc59df27690ca3cc993c99de7
parent09488165d5cc795a90b789c5657b1cbd279beb16 (diff)
i386: minor nx handling adjustment
Constrain __supported_pte_mask and NX handling to just the PAE kernel. Signed-off-by: Jan Beulich <jbeulich@novell.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--arch/i386/mm/init.c7
-rw-r--r--include/asm-i386/page.h1
2 files changed, 4 insertions, 4 deletions
diff --git a/arch/i386/mm/init.c b/arch/i386/mm/init.c
index 6e72f22e6bb..e1a9a805c44 100644
--- a/arch/i386/mm/init.c
+++ b/arch/i386/mm/init.c
@@ -471,6 +471,10 @@ void zap_low_mappings (void)
471 flush_tlb_all(); 471 flush_tlb_all();
472} 472}
473 473
474int nx_enabled = 0;
475
476#ifdef CONFIG_X86_PAE
477
474static int disable_nx __initdata = 0; 478static int disable_nx __initdata = 0;
475u64 __supported_pte_mask __read_mostly = ~_PAGE_NX; 479u64 __supported_pte_mask __read_mostly = ~_PAGE_NX;
476EXPORT_SYMBOL_GPL(__supported_pte_mask); 480EXPORT_SYMBOL_GPL(__supported_pte_mask);
@@ -500,9 +504,6 @@ static int __init noexec_setup(char *str)
500} 504}
501early_param("noexec", noexec_setup); 505early_param("noexec", noexec_setup);
502 506
503int nx_enabled = 0;
504#ifdef CONFIG_X86_PAE
505
506static void __init set_nx(void) 507static void __init set_nx(void)
507{ 508{
508 unsigned int v[4], l, h; 509 unsigned int v[4], l, h;
diff --git a/include/asm-i386/page.h b/include/asm-i386/page.h
index 99cf5d3692a..80ecc66b6d8 100644
--- a/include/asm-i386/page.h
+++ b/include/asm-i386/page.h
@@ -44,7 +44,6 @@
44extern int nx_enabled; 44extern int nx_enabled;
45 45
46#ifdef CONFIG_X86_PAE 46#ifdef CONFIG_X86_PAE
47extern unsigned long long __supported_pte_mask;
48typedef struct { unsigned long pte_low, pte_high; } pte_t; 47typedef struct { unsigned long pte_low, pte_high; } pte_t;
49typedef struct { unsigned long long pmd; } pmd_t; 48typedef struct { unsigned long long pmd; } pmd_t;
50typedef struct { unsigned long long pgd; } pgd_t; 49typedef struct { unsigned long long pgd; } pgd_t;