[tip:perf/urgent] perf python scripting: Improve the syscalls-counts script

From: tip-bot for Arnaldo Carvalho de Melo
Date: Tue Oct 26 2010 - 06:23:41 EST


Commit-ID: 6545aaa561b5678c497e94dea22cb2d1af1d6859
Gitweb: http://git.kernel.org/tip/6545aaa561b5678c497e94dea22cb2d1af1d6859
Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
AuthorDate: Mon, 25 Oct 2010 17:11:25 -0200
Committer: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
CommitDate: Mon, 25 Oct 2010 18:47:11 -0200

perf python scripting: Improve the syscalls-counts script

. Print message at script start telling how to get te summary
. Print the syscall name

Now it looks like this:

[root@emilia ~]# perf trace syscall-counts
Press control+C to stop and show the summary
^C
syscall events:

event count
---------------------------------------- -----------
read 102752
open 1293
close 878
write 319
stat 185
fstat 149
getdents 116
mmap 98
brk 80
rt_sigaction 66
munmap 42
mprotect 24
lseek 21
lstat 7
rt_sigprocmask 4
futex 3
statfs 3
ioctl 3
readlink 2
select 2
getegid 1
geteuid 1
getgid 1
getuid 1
getrlimit 1
fcntl 1
uname 1
[root@emilia ~]#

Cc: David S. Miller <davem@xxxxxxxxxxxxx>
Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
Cc: Ingo Molnar <mingo@xxxxxxx>
Cc: Mike Galbraith <efault@xxxxxx>
Cc: Paul Mackerras <paulus@xxxxxxxxx>
Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Cc: Stephane Eranian <eranian@xxxxxxxxxx>
Cc: Tom Zanussi <tzanussi@xxxxxxxxx>
LKML-Reference: <new-submission>
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
---
tools/perf/scripts/python/syscall-counts.py | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/tools/perf/scripts/python/syscall-counts.py b/tools/perf/scripts/python/syscall-counts.py
index f977e85..ea183dc 100644
--- a/tools/perf/scripts/python/syscall-counts.py
+++ b/tools/perf/scripts/python/syscall-counts.py
@@ -13,6 +13,7 @@ sys.path.append(os.environ['PERF_EXEC_PATH'] + \

from perf_trace_context import *
from Core import *
+from Util import syscall_name

usage = "perf trace -s syscall-counts.py [comm]\n";

@@ -27,7 +28,7 @@ if len(sys.argv) > 1:
syscalls = autodict()

def trace_begin():
- pass
+ print "Press control+C to stop and show the summary"

def trace_end():
print_syscall_totals()
@@ -55,4 +56,4 @@ def print_syscall_totals():

for id, val in sorted(syscalls.iteritems(), key = lambda(k, v): (v, k), \
reverse = True):
- print "%-40d %10d\n" % (id, val),
+ print "%-40s %10d\n" % (syscall_name(id), val),
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/