OpenCloudOS-Kernel/tools/perf
Irina Tirdea 8bf98b8968 perf bench: fix assert when NDEBUG is defined
When NDEBUG is defined, the assert macro will be expanded to nothing.
Some assert calls used in perf are also including some functionality
(e.g. system calls), not only validity checks. Therefore, if NDEBUG is
defined, this functionality will be removed along with the assert.  Perf
also defines BUG_ON based on assert, so it has the same problem.

Define BUG_ON so that the condition will be executed when NDEBUG is
defined.  Replace the assert statements that have these side effects
with BUG_ON.

For defining BUG_ON, use "if (cond) {}" insted of "if (cond) ;" because
in the latter case build fails with "error: suggest braces around empty
body in an ‘if’ statement [-Werror=empty-body]"

Suggested-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
Reviewed-by: Namhyung Kim <namhyung@kernel.org>
Reviewed-by: Pekka Enberg <penberg@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Namhyung Kim <namhyung.kim@lge.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Steven Rostedt <rostedt@goodmis.org>
Link: http://lkml.kernel.org/r/1347082551-2394-1-git-send-email-irina.tirdea@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2012-09-08 13:18:54 -03:00
..
Documentation perf diff: Make diff command work with evsel hists 2012-09-07 21:44:02 -03:00
arch perf tools: Support for DWARF CFI unwinding on post processing 2012-08-11 15:06:56 -03:00
bench perf bench: fix assert when NDEBUG is defined 2012-09-08 13:18:54 -03:00
config perf tools: add NO_BACKTRACE for application self-debugging 2012-09-07 22:12:30 -03:00
python perf python: Use attr.watermark in twatch.py 2012-01-30 18:38:23 -02:00
scripts perf script python: Correct handler check and spelling errors 2012-08-09 13:26:19 -03:00
ui perf hists: Rename and move some functions 2012-08-20 09:47:31 -03:00
util perf bench: fix assert when NDEBUG is defined 2012-09-08 13:18:54 -03:00
.gitignore perf tools: Ignore compiled python binaries 2012-09-07 12:10:58 -03:00
CREDITS perf_counter tools: Add CREDITS file for Git contributors 2009-06-24 19:54:29 +02:00
MANIFEST perf tools: Fix make tarballs 2012-05-30 15:05:59 -03:00
Makefile perf tools: add NO_BACKTRACE for application self-debugging 2012-09-07 22:12:30 -03:00
bash_completion perf tools: Support for events bash completion 2012-08-09 15:59:26 -03:00
builtin-annotate.c perf tools: Allow user to indicate path to objdump in command line 2012-09-05 19:41:55 -03:00
builtin-bench.c perf bench: Documentation update 2012-06-27 13:17:48 -03:00
builtin-buildid-cache.c perf buildid: add perfconfig option to specify buildid cache dir 2010-06-05 09:34:04 -03:00
builtin-buildid-list.c perf symbols: Introduce symbol__elf_init() 2012-08-09 16:19:14 -03:00
builtin-diff.c perf diff: Make diff command work with evsel hists 2012-09-07 21:44:02 -03:00
builtin-evlist.c perf tools: Move all users of event_name to perf_evsel__name 2012-06-19 13:06:20 -03:00
builtin-help.c perf help: Remove use of die and handle errors 2012-09-05 17:21:10 -03:00
builtin-inject.c perf symbols: Support minimal build without libelf 2012-08-09 16:26:38 -03:00
builtin-kmem.c perf kmem: Use evsel->tp_format and perf_sample 2012-08-07 23:44:20 -03:00
builtin-kvm.c perf kvm: Do guest-only counting by default 2012-01-06 15:47:37 -02:00
builtin-list.c perf tools: Support for events bash completion 2012-08-09 15:59:26 -03:00
builtin-lock.c perf lock: Remove use of die and handle errors 2012-09-05 17:19:38 -03:00
builtin-probe.c perf probe: Detect probe target when m/x options are absent 2012-05-11 13:58:53 -03:00
builtin-record.c perf record: Remove use of die/exit 2012-09-05 17:22:41 -03:00
builtin-report.c perf tools: Allow user to indicate path to objdump in command line 2012-09-05 19:41:55 -03:00
builtin-sched.c perf sched: Use perf_sample 2012-08-07 23:46:19 -03:00
builtin-script.c perf script: Remove use of die/exit 2012-09-05 17:21:39 -03:00
builtin-stat.c perf stat: Remove use of die/exit and handle errors 2012-09-05 17:20:24 -03:00
builtin-test.c perf test: Add roundtrip test for hardware cache events 2012-09-06 14:55:44 -03:00
builtin-timechart.c perf report: Accept fifos as input file 2011-12-23 17:01:03 -02:00
builtin-top.c perf evlist: Introduce evsel list accessors 2012-08-15 10:14:18 -03:00
builtin.h perf tools: Make perf.data more self-descriptive (v8) 2011-10-07 17:01:24 -03:00
command-list.txt perf symbols: Support minimal build without libelf 2012-08-09 16:26:38 -03:00
design.txt perf tools: Update ioctl documentation for PERF_IOC_FLAG_GROUP 2012-05-31 11:38:42 -03:00
perf-archive.sh perf archive: Correct cutting of symbolic link 2012-04-14 13:52:15 -03:00
perf.c perf tools: include missing pthread.h header 2012-09-07 22:08:09 -03:00
perf.h perf tools: Support for DWARF mode callchain 2012-08-11 15:07:18 -03:00