1
linux/scripts
Sam Ravnborg e241a63037 kbuild: warn about ld added unique sections
If there is a mixture of specifying sections for code in gcc
and assembler then if the assembler code do not add
the "ax" flags the linker will see this as two different sections
and generate unique sections for each. ld does so by adding a dot
and a number.
Teach modpost to warn if a section shows up that match this
pattern - but do this only for non-debug sections.

It will result in warnings like this:

WARNING: vmlinux.o (.sched.text.1): unexpected section name.
The (.[number]+) following section name are ld generated and not expected.
Did you forget to use "ax"/"aw" in a .S file?
Note that for example <linux/init.h> contains
section definitions for use in .S files.

All warnings seen with a defconfig build for:
x86 (32+64bit) and sparc64 has been fixed (via respective maintainers).

arm, powerpc (64 bit), s390 (32 bit), ia64, alpha, sh4 checked - no
warnings seen with a defconfig build.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2008-01-28 23:21:19 +01:00
..
basic
genksyms
kconfig kconfig: tristate choices with mixed tristate and boolean values 2008-01-28 23:21:18 +01:00
ksymoops
mod kbuild: warn about ld added unique sections 2008-01-28 23:21:19 +01:00
package kbuild: support ARCH=x86 in buildtar 2008-01-28 23:21:18 +01:00
rt-tester
.gitignore
bin2c.c
binoffset.c
bloat-o-meter
checkincludes.pl
checkkconfigsymbols.sh
checkpatch.pl
checkstack.pl
checksyscalls.sh
checkversion.pl
cleanfile
cleanpatch
conmakehash.c
decodecode
export_report.pl
extract-ikconfig
gcc-version.sh
gcc-x86_64-has-stack-protector.sh
gen_initramfs_list.sh
hdrcheck.sh
kallsyms.c
Kbuild.include
kernel-doc
Lindent
Makefile
Makefile.build
Makefile.clean
Makefile.headersinst
Makefile.host
Makefile.lib
Makefile.modinst
Makefile.modpost kbuild: add verbose option to Section mismatch reporting in modpost 2008-01-28 23:21:18 +01:00
makelst
mkcompile_h
mkmakefile
mksysmap
mkuboot.sh
mkversion
namespace.pl
patch-kernel
pnmtologo.c
profile2linkerlist.pl
setlocalversion
show_delta
unifdef.c
ver_linux