>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