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@davemloft.net>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Tom Zanussi <tzanussi@gmail.com>
LKML-Reference: <new-submission>
Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 6cc73614
...@@ -13,6 +13,7 @@ sys.path.append(os.environ['PERF_EXEC_PATH'] + \ ...@@ -13,6 +13,7 @@ sys.path.append(os.environ['PERF_EXEC_PATH'] + \
from perf_trace_context import * from perf_trace_context import *
from Core import * from Core import *
from Util import syscall_name
usage = "perf trace -s syscall-counts.py [comm]\n"; usage = "perf trace -s syscall-counts.py [comm]\n";
...@@ -27,7 +28,7 @@ if len(sys.argv) > 1: ...@@ -27,7 +28,7 @@ if len(sys.argv) > 1:
syscalls = autodict() syscalls = autodict()
def trace_begin(): def trace_begin():
pass print "Press control+C to stop and show the summary"
def trace_end(): def trace_end():
print_syscall_totals() print_syscall_totals()
...@@ -55,4 +56,4 @@ def print_syscall_totals(): ...@@ -55,4 +56,4 @@ def print_syscall_totals():
for id, val in sorted(syscalls.iteritems(), key = lambda(k, v): (v, k), \ for id, val in sorted(syscalls.iteritems(), key = lambda(k, v): (v, k), \
reverse = True): reverse = True):
print "%-40d %10d\n" % (id, val), print "%-40s %10d\n" % (syscall_name(id), val),
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment