x86/cpu changes for v2.6.38
Linus,
Please pull the latest x86-cpu-for-linus git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git x86-cpu-for-linus
Thanks,
Ingo
------------------>
Kees Cook (5):
x86, cpu: Rename verify_cpu_64.S to verify_cpu.S x86, cpu: Clear XD_DISABLED flag on Intel to regain NX x86, cpu: Call verify_cpu during 32bit CPU startup x86, cpu: Only CPU features determine NX capabilities
x86: Fix included-by file reference comments
arch/x86/boot/compressed/head_64.S | 2 +-
arch/x86/kernel/head_32.S | 6 +++
arch/x86/kernel/trampoline_64.S | 2 +-
arch/x86/kernel/{verify_cpu_64.S => verify_cpu.S} | 49 +++++++++++++++++---
arch/x86/mm/setup_nx.c | 2 +-
5 files changed, 50 insertions(+), 11 deletions(-)
rename arch/x86/kernel/{verify_cpu_64.S => verify_cpu.S} (65%)arch/x86/boot/compressed/head_64.S +1 -1
@@ -182,7 +182,7 @@ no_longmode: hlt jmp 1b -#include "../../kernel/verify_cpu_64.S" +#include "../../kernel/verify_cpu.S" /* * Be careful here startup_64 needs to be at a predictable
arch/x86/kernel/head_32.S +6 -0
@@ -314,6 +314,10 @@ ENTRY(startup_32_smp) subl $0x80000001, %eax cmpl $(0x8000ffff-0x80000001), %eax ja 6f + + /* Clear bogus XD_DISABLE bits */ + call verify_cpu + mov $0x80000001, %eax cpuid /* Execute Disable bit supported? */
@@ -609,6 +613,8 @@ ignore_int: #endif iret +#include "verify_cpu.S" + __REFDATA .align 4 ENTRY(initial_code)
arch/x86/kernel/trampoline_64.S +1 -1
@@ -127,7 +127,7 @@ startup_64: no_longmode: hlt jmp no_longmode -#include "verify_cpu_64.S" +#include "verify_cpu.S" # Careful these need to be in the same 64K segment as the above; tidt:
arch/x86/kernel/verify_cpu.S renamed from arch/x86/kernel/verify_cpu_64.S +41 -8
73 lines not on this page · raw message
arch/x86/mm/setup_nx.c +1 -1
@@ -41,7 +41,7 @@ void __init x86_report_nx(void) {if (!cpu_has_nx) {printk (KERN_NOTICE "Notice: NX (Execute Disable) protection " -"missing in CPU or disabled in BIOS!\n" ); +"missing in CPU!\n" ); }else {#if defined(CONFIG_X86_64 ) || defined(CONFIG_X86_PAE )if (disable_nx) {