aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/scripts/perl
diff options
context:
space:
mode:
authorDaniel Bristot de Oliveira <bristot@redhat.com>2014-06-11 15:09:08 -0400
committerArnaldo Carvalho de Melo <acme@redhat.com>2014-06-25 11:26:56 -0400
commit07100877ea8fd9b2feabb4dd78f3322892f6bd77 (patch)
tree6f4ac234d746f9e55f7bffeaabb9b7e61d956096 /tools/perf/scripts/perl
parent1c92f88542faa3ae4f970c548b4fe8275a45201b (diff)
perf scripts: Fallback to syscalls:* when raw_syscalls:* is not available
Older kernels (e.g., RHEL6) do system call tracing via the syscalls:sys_{enter,exit} tracepoints rather than using raw_syscalls:*. Update perf python and perl scripts to fallback to syscalls:* when raw_syscalls:* isn't available. Signed-off-by: Daniel Bristot de Oliveira <bristot@redhat.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Luis Claudio R. Goncalves <lgoncalv@redhat.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Link: http://lkml.kernel.org/r/5a6c64081a3375bc3bc66351b14559678ef4d71e.1402507908.git.bristot@redhat.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/scripts/perl')
-rw-r--r--tools/perf/scripts/perl/bin/failed-syscalls-record3
-rw-r--r--tools/perf/scripts/perl/failed-syscalls.pl5
2 files changed, 7 insertions, 1 deletions
diff --git a/tools/perf/scripts/perl/bin/failed-syscalls-record b/tools/perf/scripts/perl/bin/failed-syscalls-record
index 8104895a7b67..74685f318379 100644
--- a/tools/perf/scripts/perl/bin/failed-syscalls-record
+++ b/tools/perf/scripts/perl/bin/failed-syscalls-record
@@ -1,2 +1,3 @@
1#!/bin/bash 1#!/bin/bash
2perf record -e raw_syscalls:sys_exit $@ 2(perf record -e raw_syscalls:sys_exit $@ || \
3 perf record -e syscalls:sys_exit $@) 2> /dev/null
diff --git a/tools/perf/scripts/perl/failed-syscalls.pl b/tools/perf/scripts/perl/failed-syscalls.pl
index 94bc25a347eb..55e7ae4c5c88 100644
--- a/tools/perf/scripts/perl/failed-syscalls.pl
+++ b/tools/perf/scripts/perl/failed-syscalls.pl
@@ -26,6 +26,11 @@ sub raw_syscalls::sys_exit
26 } 26 }
27} 27}
28 28
29sub syscalls::sys_exit
30{
31 raw_syscalls::sys_exit(@_)
32}
33
29sub trace_end 34sub trace_end
30{ 35{
31 printf("\nfailed syscalls by comm:\n\n"); 36 printf("\nfailed syscalls by comm:\n\n");