[PATCH] UBUNTU: SAUCE: disable_nx should not be in __cpuinitdata section for X86_32

Tim Gardner tim.gardner at canonical.com
Thu Mar 29 15:09:23 UTC 2012


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

On 03/29/2012 08:50 AM, Stefan Bader wrote:
> On 29.03.2012 15:27, Tim Gardner wrote:
>> BugLink: http://bugs.launchpad.net/bugs/968233
>> 
>> 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 <from-ubuntu at I-love.SAKURA.ne.jp> 
>> Signed-off-by: Tim Gardner <tim.gardner at canonical.com> --- 
>> 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
>> <asm/pgtable.h> #include <asm/proto.h>
>> 
>> +#ifdef CONFIG_X86_32 +int disable_nx; /* referenced by
>> load_elf_binary() */ +#else int disable_nx __cpuinitdata; 
>> +#endif
>> 
>> /* * noexec = on|off
> 
> Hm, maybe I just understand the annotation incorrectly. But I
> thought it marks functions and variables as only used during init.
> Which is wrong on 32bit, but why is it then still considered needed
> on 64bit? Probably not even needed if this is solely used for nx
> emulation...
> 

The code in load_elf_binary() that references disable_nx is "#ifdef
CONFIG_X86_32", so its unused in 64 bit.

rtg
- -- 
Tim Gardner tim.gardner at canonical.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQIcBAEBCgAGBQJPdHsdAAoJED12yEX6FEfKubsP/RGhL3SSO8B+nSB2w9R7nh7h
sWf/c+Hw/+D7UtGxDTRs8OMEzQYkA6zKkBKNSn6U8GHTAaOF1do6mtpZmIWAunLd
7BniyuReiG7oon3MxXx97nsdovxX/LGUE3mBs9S+4mEIfkYttS+gunKc2vveH4ft
ax0m4Xqu30QK9AdaUDuhCxmLrSyWci+l3MSrnmS2HBF6O/+p1MiMzuYL146XFFv6
cK18oqFPCnFREgXvFHxN9afJsjGQtPVRvhCu5TsiYy0o9dYNeDgSZnVzCr+0moiO
L25KrAuDjxsBdkTp4jMpF3kuu1FP9g2JO5snaMOkGRMc6uBDXBF9Ii9wJkBGKd8b
TqRv9bRF2at7eV44zyapk2OXGWIhoWkAfc5pm7UZ30hq8n0SRBjauxKParJLPr0I
2xMsIiq/iAypFjAbFY6YWGzSYua+iO5TIYx3xoOyNr0U7NgovQEQzYMaYdJ1PD/f
3373Gt4J2GDd71sR77LlmEi7m9slD6xlQ0ihLdmIfpchek4paqJ82iIQT+wZVbtS
zslJXpvA3GNfTif8nV2aC3eJWfyb/L9acvyWRevY3aOKFpRMx69/uMqSbtX/vztm
i3Js7MS5d/Eq44Qt1koJ9e4EMx/kAWZ69N403rDFMKGeOkLMyyIyrxUu66YU1Lsi
/8/ejwSvZT0icvv896tv
=arLI
-----END PGP SIGNATURE-----




More information about the kernel-team mailing list