From 381fffb1004041e691ca2dfd082773ea2ec0cda8 Mon Sep 17 00:00:00 2001 From: Josh Boyer Date: Mar 29 2012 15:00:59 +0000 Subject: Drop __cpuinitdata on disable_nx for x86_32 (rhbz 808075) --- diff --git a/kernel.spec b/kernel.spec index 9ea0ec3..9044a9b 100644 --- a/kernel.spec +++ b/kernel.spec @@ -54,7 +54,7 @@ Summary: The Linux kernel # For non-released -rc kernels, this will be appended after the rcX and # gitX tags, so a 3 here would become part of release "0.rcX.gitX.3" # -%global baserelease 7 +%global baserelease 8 %global fedora_build %{baserelease} # base_sublevel is the kernel version we're starting with and patching @@ -659,6 +659,7 @@ Patch09: linux-2.6-upstream-reverts.patch Patch100: taint-vbox.patch Patch160: linux-2.6-32bit-mmap-exec-randomization.patch Patch161: linux-2.6-i386-nx-emulation.patch +Patch162: nx-emu-remove-cpuinitdata-for-disable_nx-on-x86_32.patch Patch383: linux-2.6-defaults-aspm.patch @@ -1303,6 +1304,7 @@ ApplyPatch taint-vbox.patch # ApplyPatch linux-2.6-32bit-mmap-exec-randomization.patch ApplyPatch linux-2.6-i386-nx-emulation.patch +ApplyPatch nx-emu-remove-cpuinitdata-for-disable_nx-on-x86_32.patch # # bugfixes to drivers and filesystems @@ -2211,6 +2213,7 @@ fi %changelog * Thu Mar 29 2012 Josh Boyer +- Drop __cpuinitdata on disable_nx for x86_32 (rhbz 808075) - iwl{wifi,legacy}: Fix warnings on remove interface from Stanislaw Gruszka (rhbz 770467) diff --git a/nx-emu-remove-cpuinitdata-for-disable_nx-on-x86_32.patch b/nx-emu-remove-cpuinitdata-for-disable_nx-on-x86_32.patch new file mode 100644 index 0000000..38c96ca --- /dev/null +++ b/nx-emu-remove-cpuinitdata-for-disable_nx-on-x86_32.patch @@ -0,0 +1,47 @@ +>From e540f21852043a4d8e8cf5e505607909d0ab0f51 Mon Sep 17 00:00:00 2001 +From: Tim Gardner +Date: Thu, 29 Mar 2012 06:21:01 -0600 +Subject: [PATCH] UBUNTU: SAUCE: disable_nx should not be in __cpuinitdata + section for X86_32 + +I noticed a section mismatch warning while building 3.2.0-20.33 for X86_32. + + AR arch/x86/lib/lib.a + LD vmlinux.o + MODPOST vmlinux.o +WARNING: vmlinux.o(.text+0x187833): Section mismatch in reference from the function load_elf_binary() to the variable .cpuinit.data:disable_nx +The function load_elf_binary() references +the variable __cpuinitdata disable_nx. +This is often because load_elf_binary lacks a __cpuinitdata +annotation or the annotation of disable_nx is wrong. + +load_elf_binary() is definitely called after initialization. + +This code was added by 'UBUNTU: ubuntu: nx-emu - i386: NX emulation', so +this is not an upstream problem. + +Reported-by: Tetsuo Handa +Signed-off-by: Tim Gardner +--- + arch/x86/mm/setup_nx.c | 4 ++++ + 1 files changed, 4 insertions(+), 0 deletions(-) + +diff --git a/arch/x86/mm/setup_nx.c b/arch/x86/mm/setup_nx.c +index 90c9eff3..89fd946 100644 +--- a/arch/x86/mm/setup_nx.c ++++ b/arch/x86/mm/setup_nx.c +@@ -6,7 +6,11 @@ + #include + #include + ++#ifdef CONFIG_X86_32 ++int disable_nx; /* referenced by load_elf_binary() */ ++#else + int disable_nx __cpuinitdata; ++#endif + + /* + * noexec = on|off +-- +1.7.9.1 +