linux/scripts
Andreas Gruenbacher 64e6c1e123 genksyms: track symbol checksum changes
Sometimes it is preferable to avoid changes of exported symbol checksums
(to avoid breaking externally provided modules).  When a checksum change
occurs, it can be hard to figure out what caused this change: underlying
types may have changed, or additional type information may simply have
become available at the point where a symbol is exported.

Add a new --reference option to genksyms which allows it to report why
checksums change, based on the type information dumps it creates with the
--dump-types flag.  Genksyms will read in such a dump from a previous run,
and report which symbols have changed (and why).

The behavior can be controlled for an entire build as follows: If
KBUILD_SYMTYPES is set, genksyms uses --dump-types to produce *.symtypes
dump files.  If any *.symref files exist, those will be used as the
reference to check against.  If KBUILD_PRESERVE is set, checksum changes
will fail the build.

Signed-off-by: Andreas Gruenbacher <agruen@suse.de>
Cc: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2008-12-03 22:33:11 +01:00
..
basic Update .gitignore files for generated targets 2008-10-20 11:24:31 -07:00
genksyms genksyms: track symbol checksum changes 2008-12-03 22:33:11 +01:00
kconfig kconfig: fix options to check-lxdialog.sh 2008-12-03 22:11:14 +01:00
ksymoops
mod kbuild: prevent modpost from looking for a .cmd file for a static library linked into a module 2008-10-29 22:02:10 +01:00
package kbuild: Fixup deb-pkg target to generate separate firmware deb 2008-11-09 23:02:58 +01:00
rt-tester [PATCH] rtmutex: Modify rtmutex-tester to test the setscheduler propagation 2006-06-27 17:32:47 -07:00
selinux SELinux: add gitignore file for mdp script 2008-09-05 21:43:38 +10:00
.gitignore Add binoffset to gitignore 2008-02-09 10:43:58 +01:00
bin2c.c
binoffset.c update the email address of Randy Dunlap 2006-01-03 13:37:51 +01:00
bloat-o-meter fix bloat-o-meter for ppc64 2007-12-17 19:28:17 -08:00
bootgraph.pl tracing/fastboot: fix row order in bootgraph.pl 2008-10-22 16:37:25 +02:00
checkincludes.pl
checkkconfigsymbols.sh kbuild: script to check for undefined Kconfig symbols 2007-10-12 21:13:50 +02:00
checkpatch.pl Update email addresses. 2008-10-20 12:50:03 -07:00
checkstack.pl sparc: Add checkstack support 2008-10-22 21:53:49 -07:00
checksyscalls.sh scripts/checksyscalls.sh: fix for non-gnu sed 2008-10-29 22:02:08 +01:00
checkversion.pl kbuild: introduce utsrelease.h 2006-07-03 23:30:54 +02:00
cleanfile scripts: Make cleanfile/cleanpatch warn about long lines 2007-07-16 21:15:50 +02:00
cleanpatch scripts: Make cleanfile/cleanpatch warn about long lines 2007-07-16 21:15:50 +02:00
conmakehash.c
decodecode Mark 'scripts/decodecode' executable 2008-05-30 14:02:21 -07:00
diffconfig kconfig: add diffconfig utility 2008-07-25 22:12:41 +02:00
export_report.pl kbuild: fix perl usage in export_report.pl 2007-10-12 21:13:50 +02:00
extract-ikconfig remove bashisms from scripts/extract-ikconfig 2008-12-03 21:32:02 +01:00
gcc-version.sh kbuild: fix buglet in gcc-version.sh 2008-01-28 23:14:36 +01:00
gcc-x86_64-has-stack-protector.sh [PATCH] Add the -fstack-protector option to the CFLAGS 2006-09-26 10:52:39 +02:00
gen_initramfs_list.sh kbuild: fix unportability in gen_initramfs_list.sh 2008-04-28 22:50:51 +02:00
headers_check.pl Fix incompatibility with versions of Perl less than 5.6.0 2008-10-29 22:38:37 +01:00
headers_install.pl Fix incompatibility with versions of Perl less than 5.6.0 2008-10-29 22:38:37 +01:00
headers.sh kbuild: prepare headers_* for arch/$ARCH/include 2008-07-25 22:12:33 +02:00
kallsyms.c kbuild: filter away debug symbols from kernel symbols 2008-05-19 20:07:58 +02:00
Kbuild.include kbuild: use KECHO convenience echo 2008-12-03 21:32:01 +01:00
kernel-doc kernel-doc: handle varargs cleanly 2008-12-01 19:55:25 -08:00
Lindent scripts/Lindent: support gnu indent v2.2.10 2008-04-29 08:06:04 -07:00
Makefile selinux: add support for installing a dummy policy (v2) 2008-08-27 08:54:08 +10:00
Makefile.build genksyms: track symbol checksum changes 2008-12-03 22:33:11 +01:00
Makefile.clean kbuild: fix some minor typoes 2008-04-25 20:18:48 +02:00
Makefile.fwinst firmware: silence __fw_modbuild and __fw_modinst 'Nothing to be done' messages 2008-08-02 07:52:29 +01:00
Makefile.headersinst kbuild: install all headers when arch is changed 2008-07-25 22:12:18 +02:00
Makefile.host kbuild: fix some minor typoes 2008-04-25 20:18:48 +02:00
Makefile.lib kbuild: expand -I in KBUILD_CPPFLAGS 2008-12-03 21:31:59 +01:00
Makefile.modinst kbuild: fix installing external modules 2008-01-28 23:14:36 +01:00
Makefile.modpost kbuild: fix KBUILD_EXTRA_SYMBOLS 2008-10-29 22:02:09 +01:00
makelst kbuild: introduce ccflags-y, asflags-y and ldflags-y 2007-10-15 22:25:06 +02:00
mkcompile_h kbuild: kill output in silent mode of mkcompile_h 2008-12-03 21:32:00 +01:00
mkmakefile kbuild: teach mkmakfile to be silent 2008-12-03 21:32:02 +01:00
mksysmap kbuild: filter away debug symbols from kernel symbols 2008-05-19 20:07:58 +02:00
mkuboot.sh kbuild/mkuboot.sh: allow spaces in CROSS_COMPILE 2007-05-02 20:58:10 +02:00
mkversion
namespace.pl x86: fixup the x86 namespace change in scripts/namespace.pl 2007-10-11 17:56:02 +02:00
patch-kernel bugfix for scripts/patch-kernel in 2.6 sublevel stepping 2008-08-06 22:11:33 +02:00
pnmtologo.c
profile2linkerlist.pl [PATCH] x86_64: Basic reorder infrastructure 2006-03-25 09:10:56 -08:00
recordmcount.pl ftrace: dynamic ftrace process only text section 2008-10-23 15:58:20 +02:00
setlocalversion kbuild: tag with git revision when git describe is missing 2008-10-29 22:25:36 +01:00
show_delta kbuild: fix mode of checkstack.pl and other files. 2006-04-11 13:37:07 +02:00
tags.sh tags and cscope support really belongs in a shell script 2008-12-03 22:24:13 +01:00
unifdef.c kbuild: replace use of strlcpy with a dedicated implmentation in unifdef 2006-09-25 09:00:00 +02:00
ver_linux kbuild: scripts/ver_linux: don't set PATH 2008-07-31 23:36:54 +02:00