diff options
author | Ingo Molnar <mingo@kernel.org> | 2013-08-29 06:02:34 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2013-08-29 06:02:34 -0400 |
commit | 00e4cb1ced1b17c35465defafe86d156cbd7544e (patch) | |
tree | 18f4652688239e447fb751efdbba4da502d31def /tools/perf/util/python.c | |
parent | aee2bce3cfdcb9bf2c51c24496ee776e8202ed11 (diff) | |
parent | 456da532a5fb04f8a79622df7dd49e84e04f31a8 (diff) |
Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:
* Don't install scripting files files when perl/python support is disabled.
* Support ! in -e expressions in 'perf trace', to filter a list of syscalls.
* Add --verbose and -o/--output options to 'perf trace'.
* Introduce better formatting of syscall arguments in 'perf trace',
including so far beautifiers for mmap, madvise, syscall return
values.
* Fixup jobserver setup in libtraceevent makefile.
* Debug improvements from Adrian Hunter.
* Try to increase the file descriptor limits on EMFILE, from Andi Kleen.
* Remove unused force option in 'perf kvm', from David Ahern.
* Make 'perf trace' command line arguments consistent with 'perf record',
from David Ahern.
* Fix correlation of samples coming after PERF_RECORD_EXIT event, from
David Ahern.
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools/perf/util/python.c')
-rw-r--r-- | tools/perf/util/python.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tools/perf/util/python.c b/tools/perf/util/python.c index 925e0c3e6d91..381f4fda9654 100644 --- a/tools/perf/util/python.c +++ b/tools/perf/util/python.c | |||
@@ -8,6 +8,26 @@ | |||
8 | #include "cpumap.h" | 8 | #include "cpumap.h" |
9 | #include "thread_map.h" | 9 | #include "thread_map.h" |
10 | 10 | ||
11 | /* | ||
12 | * Support debug printing even though util/debug.c is not linked. That means | ||
13 | * implementing 'verbose' and 'eprintf'. | ||
14 | */ | ||
15 | int verbose; | ||
16 | |||
17 | int eprintf(int level, const char *fmt, ...) | ||
18 | { | ||
19 | va_list args; | ||
20 | int ret = 0; | ||
21 | |||
22 | if (verbose >= level) { | ||
23 | va_start(args, fmt); | ||
24 | ret = vfprintf(stderr, fmt, args); | ||
25 | va_end(args); | ||
26 | } | ||
27 | |||
28 | return ret; | ||
29 | } | ||
30 | |||
11 | /* Define PyVarObject_HEAD_INIT for python 2.5 */ | 31 | /* Define PyVarObject_HEAD_INIT for python 2.5 */ |
12 | #ifndef PyVarObject_HEAD_INIT | 32 | #ifndef PyVarObject_HEAD_INIT |
13 | # define PyVarObject_HEAD_INIT(type, size) PyObject_HEAD_INIT(type) size, | 33 | # define PyVarObject_HEAD_INIT(type, size) PyObject_HEAD_INIT(type) size, |