kernel_optimize_test/scripts/genksyms
Andreas Gruenbacher 94aa3d716e kbuild: genksyms parser: fix the __attribute__ rule
We are having two kinds of problems with genksyms today: fake checksum
changes without actual ABI changes, and changes which we would rather like
to ignore (such as an additional field at the end of a structure that
modules are not supposed to touch, for example).

I have thought about ways to improve genksyms and compute checksums
differently to avoid those problems, but in the end I don't see a
fundamentally better way.  So here are some genksyms patches for at least
making the checksums more easily manageable, if we cannot fully fix them.

In addition to the bugfixes (the first two patches), this allows genksyms
to track checksum changes and report why a checksum changed (third patch),
and to selectively ignore changes (fourth patch).

This patch:

Gcc __attribute__ definitions may occur repeatedly, e.g.,

	static int foo __attribute__((__used__))
		       __attribute__((aligned (16)));

The genksyms parser does not understand this, and generates a syntax error.
Fix this case.

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-07-31 23:00:25 +02:00
..
.gitignore
genksyms.c remove the v850 port 2008-07-24 10:47:24 -07:00
genksyms.h kbuild: support for %.symtypes files 2006-06-24 23:42:46 +02:00
keywords.c_shipped kbuild: apply genksyms changes 2007-10-12 21:15:31 +02:00
keywords.gperf kbuild: __extension__ support in genksyms (fix unknown CRC warning) 2007-10-12 21:15:31 +02:00
lex.c_shipped kbuild: scripts/genksyms/lex.l: add %option noinput 2008-07-30 22:31:02 +02:00
lex.l kbuild: scripts/genksyms/lex.l: add %option noinput 2008-07-30 22:31:02 +02:00
Makefile kbuild: fix genksyms Makefile 2007-10-12 21:15:31 +02:00
parse.c_shipped kbuild: genksyms parser: fix the __attribute__ rule 2008-07-31 23:00:25 +02:00
parse.h_shipped kbuild: apply genksyms changes 2007-10-12 21:15:31 +02:00
parse.y kbuild: genksyms parser: fix the __attribute__ rule 2008-07-31 23:00:25 +02:00