kernel-ark/include
Bart Van Assche d9ad8bc0ca branch tracer: Fix for enabling branch profiling makes sparse unusable
One of the changes between kernels 2.6.28 and 2.6.29 is that a branch profiler
has been added for if() statements. Unfortunately this patch makes the sparse
output unusable with CONFIG_TRACE_BRANCH_PROFILING=y: when branch profiling is
enabled, sparse prints so much false positives that the real issues are no
longer visible. This behavior can be reproduced as follows:
* enable CONFIG_TRACE_BRANCH_PROFILING, e.g. by running make allyesconfig or
  make allmodconfig.
* run make C=2

Result: a huge number of the following sparse warnings.
...
include/linux/cpumask.h:547:2: warning: symbol '______r' shadows an earlier one
include/linux/cpumask.h:547:2: originally declared here
...

The patch below fixes this by disabling branch profiling while analyzing the
kernel code with sparse.

See also:
* http://lkml.org/lkml/2008/11/21/18
* http://bugzilla.kernel.org/show_bug.cgi?id=12925

Signed-off-by: Bart Van Assche <bart.vanassche@gmail.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Steven Rostedt <srostedt@redhat.com>
LKML-Reference: <200904051620.02311.bart.vanassche@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-04-07 17:07:40 +02:00
..
acpi acpi/x86: introduce __apci_map_table, v4 2009-02-09 13:35:07 +01:00
asm-arm [ARM] S3C24XX: Move mci.h to arch/arm/plat-s3c24xx/include/plat 2008-10-30 10:17:16 +00:00
asm-frv Merge branch 'x86/core' into tracing/textedit 2009-03-06 16:45:01 +01:00
asm-generic tracing/syscalls: core infrastructure for syscalls tracing, enhancements 2009-03-13 16:57:42 +01:00
asm-h8300 h8300: update timer handler - new files 2008-10-16 11:21:29 -07:00
asm-m32r Merge branch 'x86/core' into tracing/textedit 2009-03-06 16:45:01 +01:00
asm-mn10300 Merge branch 'x86/core' into tracing/textedit 2009-03-06 16:45:01 +01:00
crypto crypto: shash - Fix tfm destruction 2009-02-05 16:51:25 +11:00
drm drm: fix EDID parser problem with positive/negative hsync/vsync 2009-03-11 12:18:48 +10:00
keys KEYS: Disperse linux/key_ui.h 2008-11-14 10:39:13 +11:00
linux branch tracer: Fix for enabling branch profiling makes sparse unusable 2009-04-07 17:07:40 +02:00
math-emu math-emu: Fix thinko in _FP_DIV 2008-10-22 22:09:59 -07:00
media Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 2009-02-02 19:26:06 -08:00
mtd headers_check fix: mtd/inftl-user.h 2009-01-31 00:13:34 +05:30
net netns: Remove net_alive 2009-03-03 01:14:27 -08:00
pcmcia
rdma RDMA/cma: Remove padding arrays by using struct sockaddr_storage 2008-08-04 11:02:14 -07:00
rxrpc
scsi [SCSI] fcoe: Out of order tx frames was causing several check condition SCSI status 2009-03-10 09:09:21 -05:00
sound headers_check fix: sound/hdsp.h 2009-01-31 00:13:56 +05:30
trace tracing: tracepoints for softirq entry/exit - tracepoints 2009-03-12 21:20:58 -04:00
video atyfb: fix CONFIG_ namespace violations 2009-02-05 12:56:48 -08:00
xen xen: add xenfs to allow usermode <-> Xen interaction 2009-01-08 08:30:59 -08:00
Kbuild kbuild: only one call for include/ in make headers_* 2008-07-25 22:11:44 +02:00