diff options
author | Dave Hansen <dave.hansen@linux.intel.com> | 2014-09-11 14:15:11 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2014-09-11 14:30:01 -0700 |
commit | c8128cceb4f4b02c53096cb173628184c7e9bc36 (patch) | |
tree | 670940085ab481430428d4ff707566a8dae734e7 | |
parent | 2ce7598c9a453e0acd0e07be7be3f5eb39608ebd (diff) | |
download | op-kernel-dev-c8128cceb4f4b02c53096cb173628184c7e9bc36.zip op-kernel-dev-c8128cceb4f4b02c53096cb173628184c7e9bc36.tar.gz |
x86: Axe the lightly-used cpu_has_pae
cpu_has_pae is only referenced in one place: the X86_32 kexec
code (in a file not even built on 64-bit). It hardly warrants
its own macro, or the trouble we go to ensuring that it can't
be called in X86_64 code.
Axe the macro and replace it with a direct cpu feature check.
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Link: http://lkml.kernel.org/r/20140911211511.AD76E774@viggo.jf.intel.com
Acked-by: Borislav Petkov <bp@suse.de>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
-rw-r--r-- | arch/x86/include/asm/cpufeature.h | 4 | ||||
-rw-r--r-- | arch/x86/kernel/machine_kexec_32.c | 3 |
2 files changed, 2 insertions, 5 deletions
diff --git a/arch/x86/include/asm/cpufeature.h b/arch/x86/include/asm/cpufeature.h index bb9b258..7b50875 100644 --- a/arch/x86/include/asm/cpufeature.h +++ b/arch/x86/include/asm/cpufeature.h @@ -300,7 +300,6 @@ extern const char * const x86_bug_flags[NBUGINTS*32]; #define cpu_has_de boot_cpu_has(X86_FEATURE_DE) #define cpu_has_pse boot_cpu_has(X86_FEATURE_PSE) #define cpu_has_tsc boot_cpu_has(X86_FEATURE_TSC) -#define cpu_has_pae boot_cpu_has(X86_FEATURE_PAE) #define cpu_has_pge boot_cpu_has(X86_FEATURE_PGE) #define cpu_has_apic boot_cpu_has(X86_FEATURE_APIC) #define cpu_has_sep boot_cpu_has(X86_FEATURE_SEP) @@ -358,9 +357,6 @@ extern const char * const x86_bug_flags[NBUGINTS*32]; #undef cpu_has_vme #define cpu_has_vme 0 -#undef cpu_has_pae -#define cpu_has_pae ___BUG___ - #undef cpu_has_k6_mtrr #define cpu_has_k6_mtrr 0 diff --git a/arch/x86/kernel/machine_kexec_32.c b/arch/x86/kernel/machine_kexec_32.c index 1667b1d..72e8e31 100644 --- a/arch/x86/kernel/machine_kexec_32.c +++ b/arch/x86/kernel/machine_kexec_32.c @@ -247,7 +247,8 @@ void machine_kexec(struct kimage *image) /* now call it */ image->start = relocate_kernel_ptr((unsigned long)image->head, (unsigned long)page_list, - image->start, cpu_has_pae, + image->start, + boot_cpu_has(X86_FEATURE_PAE), image->preserve_context); #ifdef CONFIG_KEXEC_JUMP |