History

perf script python: Remove mixed indentation

Remove mixed indentation in Python scripts. Revert to either all tabs (most common form) or all spaces (4 or 8) depending on what was the intent of the original commit. This is necessary to complete Python3 support as it will flag an error if it encounters mixed indentation.

Tony Jones committed 7 years ago

Commit b504d7f1 parent c1d3e6314 files · +136 −135Browse files

Showing the changes to tools/perf/scripts/python (14 of 14 files). Show all

Unified · Split

14 files
  1. tools/perf/scripts/python/check-perf-trace.py +32 −33
  2. tools/perf/scripts/python/compaction-times.py +4 −4
  3. tools/perf/scripts/python/event_analyzing_sample.py +3 −3
  4. tools/perf/scripts/python/failed-syscalls-by-pid.py +19 −19
  5. tools/perf/scripts/python/futex-contention.py +1 −1
  6. tools/perf/scripts/python/intel-pt-events.py +16 −16
  7. tools/perf/scripts/python/mem-phys-addr.py +4 −3
  8. tools/perf/scripts/python/net_dropmonitor.py +1 −1
  9. tools/perf/scripts/python/netdev-times.py +7 −5
  10. tools/perf/scripts/python/sched-migration.py +3 −3
  11. tools/perf/scripts/python/sctop.py +7 −6
  12. tools/perf/scripts/python/stackcollapse.py +1 −1
  13. tools/perf/scripts/python/syscall-counts-by-pid.py +23 −24
  14. tools/perf/scripts/python/syscall-counts.py +15 −16
tools/perf/scripts/python/check-perf-trace.py+32−33
@@ -23,60 +23,59 @@ def trace_begin(): · 22 unmodified lines
23 pass23 pass
24 24
25def trace_end():25def trace_end():
26 print_unhandled()26 print_unhandled()
27 27
28def irq__softirq_entry(event_name, context, common_cpu,28def irq__softirq_entry(event_name, context, common_cpu,
29 common_secs, common_nsecs, common_pid, common_comm,29 common_secs, common_nsecs, common_pid, common_comm,
30 common_callchain, vec):30 common_callchain, vec):
31 print_header(event_name, common_cpu, common_secs, common_nsecs,31 print_header(event_name, common_cpu, common_secs, common_nsecs,
32 common_pid, common_comm)32 common_pid, common_comm)
33 33
34 print_uncommon(context)34 print_uncommon(context)
35 35
36 print "vec=%s\n" % \36 print "vec=%s\n" % (symbol_str("irq__softirq_entry", "vec", vec)),
37 (symbol_str("irq__softirq_entry", "vec", vec)),
38 37
39def kmem__kmalloc(event_name, context, common_cpu,38def kmem__kmalloc(event_name, context, common_cpu,
40 common_secs, common_nsecs, common_pid, common_comm,39 common_secs, common_nsecs, common_pid, common_comm,
41 common_callchain, call_site, ptr, bytes_req, bytes_alloc,40 common_callchain, call_site, ptr, bytes_req, bytes_alloc,
42 gfp_flags):41 gfp_flags):
43 print_header(event_name, common_cpu, common_secs, common_nsecs,42 print_header(event_name, common_cpu, common_secs, common_nsecs,
44 common_pid, common_comm)43 common_pid, common_comm)
45 44
46 print_uncommon(context)45 print_uncommon(context)
47 46
48 print "call_site=%u, ptr=%u, bytes_req=%u, " \47 print "call_site=%u, ptr=%u, bytes_req=%u, " \
49 "bytes_alloc=%u, gfp_flags=%s\n" % \48 "bytes_alloc=%u, gfp_flags=%s\n" % \
50 (call_site, ptr, bytes_req, bytes_alloc,49 (call_site, ptr, bytes_req, bytes_alloc,
51
52 flag_str("kmem__kmalloc", "gfp_flags", gfp_flags)),50 flag_str("kmem__kmalloc", "gfp_flags", gfp_flags)),
53 51
54def trace_unhandled(event_name, context, event_fields_dict):52def trace_unhandled(event_name, context, event_fields_dict):
55 try:53 try:
56 unhandled[event_name] += 154 unhandled[event_name] += 1
57 except TypeError:55 except TypeError:
58 unhandled[event_name] = 156 unhandled[event_name] = 1
59 57
60def print_header(event_name, cpu, secs, nsecs, pid, comm):58def print_header(event_name, cpu, secs, nsecs, pid, comm):
61 print "%-20s %5u %05u.%09u %8u %-20s " % \59 print "%-20s %5u %05u.%09u %8u %-20s " % \
62 (event_name, cpu, secs, nsecs, pid, comm),60 (event_name, cpu, secs, nsecs, pid, comm),
63 61
64# print trace fields not included in handler args62# print trace fields not included in handler args
65def print_uncommon(context):63def print_uncommon(context):
66 print "common_preempt_count=%d, common_flags=%s, common_lock_depth=%d, " \64 print "common_preempt_count=%d, common_flags=%s, " \
67 % (common_pc(context), trace_flag_str(common_flags(context)), \65 "common_lock_depth=%d, " % \
68 common_lock_depth(context))66 (common_pc(context), trace_flag_str(common_flags(context)),
67 common_lock_depth(context))
69 68
70def print_unhandled():69def print_unhandled():
71 keys = unhandled.keys()70 keys = unhandled.keys()
72 if not keys:71 if not keys:
73 return72 return
74 73
75 print "\nunhandled events:\n\n",74 print "\nunhandled events:\n\n",
76 75
77 print "%-40s %10s\n" % ("event", "count"),76 print "%-40s %10s\n" % ("event", "count"),
78 print "%-40s %10s\n" % ("----------------------------------------", \77 print "%-40s %10s\n" % ("----------------------------------------", \
79 "-----------"),78 "-----------"),
80 79
81 for event_name in keys:80 for event_name in keys:
82 print "%-40s %10d\n" % (event_name, unhandled[event_name])81 print "%-40s %10d\n" % (event_name, unhandled[event_name])
tools/perf/scripts/python/compaction-times.py+4−4
@@ -216,15 +216,15 @@ def compaction__mm_compaction_migratepages(event_name, context, common_cpu, · 215 unmodified lines
216 pair(nr_migrated, nr_failed), None, None)216 pair(nr_migrated, nr_failed), None, None)
217 217
218def compaction__mm_compaction_isolate_freepages(event_name, context, common_cpu,218def compaction__mm_compaction_isolate_freepages(event_name, context, common_cpu,
219 common_secs, common_nsecs, common_pid, common_comm,219 common_secs, common_nsecs, common_pid, common_comm,
220 common_callchain, start_pfn, end_pfn, nr_scanned, nr_taken):220 common_callchain, start_pfn, end_pfn, nr_scanned, nr_taken):
221 221
222 chead.increment_pending(common_pid,222 chead.increment_pending(common_pid,
223 None, pair(nr_scanned, nr_taken), None)223 None, pair(nr_scanned, nr_taken), None)
224 224
225def compaction__mm_compaction_isolate_migratepages(event_name, context, common_cpu,225def compaction__mm_compaction_isolate_migratepages(event_name, context, common_cpu,
226 common_secs, common_nsecs, common_pid, common_comm,226 common_secs, common_nsecs, common_pid, common_comm,
227 common_callchain, start_pfn, end_pfn, nr_scanned, nr_taken):227 common_callchain, start_pfn, end_pfn, nr_scanned, nr_taken):
228 228
229 chead.increment_pending(common_pid,229 chead.increment_pending(common_pid,
230 None, None, pair(nr_scanned, nr_taken))230 None, None, pair(nr_scanned, nr_taken))
tools/perf/scripts/python/event_analyzing_sample.py+3−3
@@ -37,7 +37,7 @@ con = sqlite3.connect("/dev/shm/perf.db") · 36 unmodified lines
37con.isolation_level = None37con.isolation_level = None
38 38
39def trace_begin():39def trace_begin():
40 print "In trace_begin:\n"40 print "In trace_begin:\n"
41 41
42 #42 #
43 # Will create several tables at the start, pebs_ll is for PEBS data with43 # Will create several tables at the start, pebs_ll is for PEBS data with
@@ -102,7 +102,7 @@ def insert_db(event): · 58 unmodified lines
102 event.ip, event.status, event.dse, event.dla, event.lat))102 event.ip, event.status, event.dse, event.dla, event.lat))
103 103
104def trace_end():104def trace_end():
105 print "In trace_end:\n"105 print "In trace_end:\n"
106 # We show the basic info for the 2 type of event classes106 # We show the basic info for the 2 type of event classes
107 show_general_events()107 show_general_events()
108 show_pebs_ll()108 show_pebs_ll()
@@ -187,4 +187,4 @@ def show_pebs_ll(): · 78 unmodified lines
187 print "%32s %8d %s" % (row[0], row[1], num2sym(row[1]))187 print "%32s %8d %s" % (row[0], row[1], num2sym(row[1]))
188 188
189def trace_unhandled(event_name, context, event_fields_dict):189def trace_unhandled(event_name, context, event_fields_dict):
190 print ' '.join(['%s=%s'%(k,str(v))for k,v in sorted(event_fields_dict.items())])190 print ' '.join(['%s=%s'%(k,str(v))for k,v in sorted(event_fields_dict.items())])
tools/perf/scripts/python/failed-syscalls-by-pid.py+19−19
@@ -58,22 +58,22 @@ def syscalls__sys_exit(event_name, context, common_cpu, · 57 unmodified lines
58 raw_syscalls__sys_exit(**locals())58 raw_syscalls__sys_exit(**locals())
59 59
60def print_error_totals():60def print_error_totals():
61 if for_comm is not None:61 if for_comm is not None:
62 print("\nsyscall errors for %s:\n" % (for_comm))62 print("\nsyscall errors for %s:\n" % (for_comm))
63 else:63 else:
64 print("\nsyscall errors:\n")64 print("\nsyscall errors:\n")
65 65
66 print("%-30s %10s" % ("comm [pid]", "count"))66 print("%-30s %10s" % ("comm [pid]", "count"))
67 print("%-30s %10s" % ("------------------------------", "----------"))67 print("%-30s %10s" % ("------------------------------", "----------"))
68 68
69 comm_keys = syscalls.keys()69 comm_keys = syscalls.keys()
70 for comm in comm_keys:70 for comm in comm_keys:
71 pid_keys = syscalls[comm].keys()71 pid_keys = syscalls[comm].keys()
72 for pid in pid_keys:72 for pid in pid_keys:
73 print("\n%s [%d]" % (comm, pid))73 print("\n%s [%d]" % (comm, pid))
74 id_keys = syscalls[comm][pid].keys()74 id_keys = syscalls[comm][pid].keys()
75 for id in id_keys:75 for id in id_keys:
76 print(" syscall: %-16s" % syscall_name(id))76 print(" syscall: %-16s" % syscall_name(id))
77 ret_keys = syscalls[comm][pid][id].keys()77 ret_keys = syscalls[comm][pid][id].keys()
78 for ret, val in sorted(syscalls[comm][pid][id].items(), key = lambda kv: (kv[1], kv[0]), reverse = True):78 for ret, val in sorted(syscalls[comm][pid][id].items(), key = lambda kv: (kv[1], kv[0]), reverse = True):
79 print(" err = %-20s %10d" % (strerror(ret), val))79 print(" err = %-20s %10d" % (strerror(ret), val))
tools/perf/scripts/python/futex-contention.py+1−1
@@ -46,5 +46,5 @@ def trace_end(): · 45 unmodified lines
46 for (tid, lock) in lock_waits:46 for (tid, lock) in lock_waits:
47 min, max, avg, count = lock_waits[tid, lock]47 min, max, avg, count = lock_waits[tid, lock]
48 print "%s[%d] lock %x contended %d times, %d avg ns" % \48 print "%s[%d] lock %x contended %d times, %d avg ns" % \
49 (process_names[tid], tid, lock, count, avg)49 (process_names[tid], tid, lock, count, avg)
50 50
tools/perf/scripts/python/intel-pt-events.py+16−16
@@ -85,22 +85,22 @@ def print_common_ip(sample, symbol, dso): · 84 unmodified lines
85 print "%16x %s (%s)" % (ip, symbol, dso)85 print "%16x %s (%s)" % (ip, symbol, dso)
86 86
87def process_event(param_dict):87def process_event(param_dict):
88 event_attr = param_dict["attr"]88 event_attr = param_dict["attr"]
89 sample = param_dict["sample"]89 sample = param_dict["sample"]
90 raw_buf = param_dict["raw_buf"]90 raw_buf = param_dict["raw_buf"]
91 comm = param_dict["comm"]91 comm = param_dict["comm"]
92 name = param_dict["ev_name"]92 name = param_dict["ev_name"]
93 93
94 # Symbol and dso info are not always resolved94 # Symbol and dso info are not always resolved
95 if (param_dict.has_key("dso")):95 if (param_dict.has_key("dso")):
96 dso = param_dict["dso"]96 dso = param_dict["dso"]
97 else:97 else:
98 dso = "[unknown]"98 dso = "[unknown]"
99 99
100 if (param_dict.has_key("symbol")):100 if (param_dict.has_key("symbol")):
101 symbol = param_dict["symbol"]101 symbol = param_dict["symbol"]
102 else:102 else:
103 symbol = "[unknown]"103 symbol = "[unknown]"
104 104
105 if name == "ptwrite":105 if name == "ptwrite":
106 print_common_start(comm, sample, name)106 print_common_start(comm, sample, name)
tools/perf/scripts/python/mem-phys-addr.py+4−3
@@ -44,12 +44,13 @@ def print_memory_type(): · 43 unmodified lines
44 print("%-40s %10s %10s\n" % ("Memory type", "count", "percentage"), end='')44 print("%-40s %10s %10s\n" % ("Memory type", "count", "percentage"), end='')
45 print("%-40s %10s %10s\n" % ("----------------------------------------",45 print("%-40s %10s %10s\n" % ("----------------------------------------",
46 "-----------", "-----------"),46 "-----------", "-----------"),
47 end='');47 end='');
48 total = sum(load_mem_type_cnt.values())48 total = sum(load_mem_type_cnt.values())
49 for mem_type, count in sorted(load_mem_type_cnt.most_common(), \49 for mem_type, count in sorted(load_mem_type_cnt.most_common(), \
50 key = lambda kv: (kv[1], kv[0]), reverse = True):50 key = lambda kv: (kv[1], kv[0]), reverse = True):
51 print("%-40s %10d %10.1f%%\n" % (mem_type, count, 100 * count / total),51 print("%-40s %10d %10.1f%%\n" %
52 end='')52 (mem_type, count, 100 * count / total),
53 end='')
53 54
54def trace_begin():55def trace_begin():
55 parse_iomem()56 parse_iomem()
tools/perf/scripts/python/net_dropmonitor.py+1−1
@@ -7,7 +7,7 @@ import os · 6 unmodified lines
7import sys7import sys
8 8
9sys.path.append(os.environ['PERF_EXEC_PATH'] + \9sys.path.append(os.environ['PERF_EXEC_PATH'] + \
10 '/scripts/python/Perf-Trace-Util/lib/Perf/Trace')10 '/scripts/python/Perf-Trace-Util/lib/Perf/Trace')
11 11
12from perf_trace_context import *12from perf_trace_context import *
13from Core import *13from Core import *
tools/perf/scripts/python/netdev-times.py+7−5
@@ -124,14 +124,16 @@ def print_receive(hunk): · 123 unmodified lines
124 event = event_list[i]124 event = event_list[i]
125 if event['event_name'] == 'napi_poll':125 if event['event_name'] == 'napi_poll':
126 print(PF_NAPI_POLL %126 print(PF_NAPI_POLL %
127 (diff_msec(base_t, event['event_t']), event['dev']))127 (diff_msec(base_t, event['event_t']),
128 event['dev']))
128 if i == len(event_list) - 1:129 if i == len(event_list) - 1:
129 print("")130 print("")
130 else:131 else:
131 print(PF_JOINT)132 print(PF_JOINT)
132 else:133 else:
133 print(PF_NET_RECV %134 print(PF_NET_RECV %
134 (diff_msec(base_t, event['event_t']), event['skbaddr'],135 (diff_msec(base_t, event['event_t']),
136 event['skbaddr'],
135 event['len']))137 event['len']))
136 if 'comm' in event.keys():138 if 'comm' in event.keys():
137 print(PF_WJOINT)139 print(PF_WJOINT)
@@ -256,7 +258,7 @@ def irq__irq_handler_exit(name, context, cpu, sec, nsec, pid, comm, callchain, i · 118 unmodified lines
256 all_event_list.append(event_info)258 all_event_list.append(event_info)
257 259
258def napi__napi_poll(name, context, cpu, sec, nsec, pid, comm, callchain, napi,260def napi__napi_poll(name, context, cpu, sec, nsec, pid, comm, callchain, napi,
259 dev_name, work=None, budget=None):261 dev_name, work=None, budget=None):
260 event_info = (name, context, cpu, nsecs(sec, nsec), pid, comm,262 event_info = (name, context, cpu, nsecs(sec, nsec), pid, comm,
261 napi, dev_name, work, budget)263 napi, dev_name, work, budget)
262 all_event_list.append(event_info)264 all_event_list.append(event_info)
@@ -353,7 +355,7 @@ def handle_irq_softirq_exit(event_info): · 90 unmodified lines
353 if irq_list == [] or event_list == 0:355 if irq_list == [] or event_list == 0:
354 return356 return
355 rec_data = {'sirq_ent_t':sirq_ent_t, 'sirq_ext_t':time,357 rec_data = {'sirq_ent_t':sirq_ent_t, 'sirq_ext_t':time,
356 'irq_list':irq_list, 'event_list':event_list}358 'irq_list':irq_list, 'event_list':event_list}
357 # merge information realted to a NET_RX softirq359 # merge information realted to a NET_RX softirq
358 receive_hunk_list.append(rec_data)360 receive_hunk_list.append(rec_data)
359 361
@@ -390,7 +392,7 @@ def handle_netif_receive_skb(event_info): · 30 unmodified lines
390 skbaddr, skblen, dev_name) = event_info392 skbaddr, skblen, dev_name) = event_info
391 if cpu in net_rx_dic.keys():393 if cpu in net_rx_dic.keys():
392 rec_data = {'event_name':'netif_receive_skb',394 rec_data = {'event_name':'netif_receive_skb',
393 'event_t':time, 'skbaddr':skbaddr, 'len':skblen}395 'event_t':time, 'skbaddr':skbaddr, 'len':skblen}
394 event_list = net_rx_dic[cpu]['event_list']396 event_list = net_rx_dic[cpu]['event_list']
395 event_list.append(rec_data)397 event_list.append(rec_data)
396 rx_skb_list.insert(0, rec_data)398 rx_skb_list.insert(0, rec_data)
tools/perf/scripts/python/sched-migration.py+3−3
@@ -14,10 +14,10 @@ import sys · 13 unmodified lines
14 14
15from collections import defaultdict15from collections import defaultdict
16try:16try:
17 from UserList import UserList17 from UserList import UserList
18except ImportError:18except ImportError:
19 # Python 3: UserList moved to the collections package19 # Python 3: UserList moved to the collections package
20 from collections import UserList20 from collections import UserList
21 21
22sys.path.append(os.environ['PERF_EXEC_PATH'] + \22sys.path.append(os.environ['PERF_EXEC_PATH'] + \
23 '/scripts/python/Perf-Trace-Util/lib/Perf/Trace')23 '/scripts/python/Perf-Trace-Util/lib/Perf/Trace')
tools/perf/scripts/python/sctop.py+7−6
@@ -13,9 +13,9 @@ from __future__ import print_function · 12 unmodified lines
13import os, sys, time13import os, sys, time
14 14
15try:15try:
16 import thread16 import thread
17except ImportError:17except ImportError:
18 import _thread as thread18 import _thread as thread
19 19
20sys.path.append(os.environ['PERF_EXEC_PATH'] + \20sys.path.append(os.environ['PERF_EXEC_PATH'] + \
21 '/scripts/python/Perf-Trace-Util/lib/Perf/Trace')21 '/scripts/python/Perf-Trace-Util/lib/Perf/Trace')
@@ -75,11 +75,12 @@ def print_syscall_totals(interval): · 53 unmodified lines
75 75
76 print("%-40s %10s" % ("event", "count"))76 print("%-40s %10s" % ("event", "count"))
77 print("%-40s %10s" %77 print("%-40s %10s" %
78 ("----------------------------------------",78 ("----------------------------------------",
79 "----------"))79 "----------"))
80 80
81 for id, val in sorted(syscalls.items(), key = lambda kv: (kv[1], kv[0]), \81 for id, val in sorted(syscalls.items(),
82 reverse = True):82 key = lambda kv: (kv[1], kv[0]),
83 reverse = True):
83 try:84 try:
84 print("%-40s %10d" % (syscall_name(id), val))85 print("%-40s %10d" % (syscall_name(id), val))
85 except TypeError:86 except TypeError:
tools/perf/scripts/python/stackcollapse.py+1−1
@@ -27,7 +27,7 @@ from collections import defaultdict · 26 unmodified lines
27from optparse import OptionParser, make_option27from optparse import OptionParser, make_option
28 28
29sys.path.append(os.environ['PERF_EXEC_PATH'] + \29sys.path.append(os.environ['PERF_EXEC_PATH'] + \
30 '/scripts/python/Perf-Trace-Util/lib/Perf/Trace')30 '/scripts/python/Perf-Trace-Util/lib/Perf/Trace')
31 31
32from perf_trace_context import *32from perf_trace_context import *
33from Core import *33from Core import *
tools/perf/scripts/python/syscall-counts-by-pid.py+23−24
@@ -39,11 +39,10 @@ def trace_end(): · 38 unmodified lines
39 print_syscall_totals()39 print_syscall_totals()
40 40
41def raw_syscalls__sys_enter(event_name, context, common_cpu,41def raw_syscalls__sys_enter(event_name, context, common_cpu,
42 common_secs, common_nsecs, common_pid, common_comm,42 common_secs, common_nsecs, common_pid, common_comm,
43 common_callchain, id, args):43 common_callchain, id, args):
44
45 if (for_comm and common_comm != for_comm) or \44 if (for_comm and common_comm != for_comm) or \
46 (for_pid and common_pid != for_pid ):45 (for_pid and common_pid != for_pid ):
47 return46 return
48 try:47 try:
49 syscalls[common_comm][common_pid][id] += 148 syscalls[common_comm][common_pid][id] += 1
@@ -51,26 +50,26 @@ def raw_syscalls__sys_enter(event_name, context, common_cpu, · 1 unmodified line
51 syscalls[common_comm][common_pid][id] = 150 syscalls[common_comm][common_pid][id] = 1
52 51
53def syscalls__sys_enter(event_name, context, common_cpu,52def syscalls__sys_enter(event_name, context, common_cpu,
54 common_secs, common_nsecs, common_pid, common_comm,53 common_secs, common_nsecs, common_pid, common_comm,
55 id, args):54 id, args):
56 raw_syscalls__sys_enter(**locals())55 raw_syscalls__sys_enter(**locals())
57 56
58def print_syscall_totals():57def print_syscall_totals():
59 if for_comm is not None:58 if for_comm is not None:
60 print("\nsyscall events for %s:\n" % (for_comm))59 print("\nsyscall events for %s:\n" % (for_comm))
61 else:60 else:
62 print("\nsyscall events by comm/pid:\n")61 print("\nsyscall events by comm/pid:\n")
63 62
64 print("%-40s %10s" % ("comm [pid]/syscalls", "count"))63 print("%-40s %10s" % ("comm [pid]/syscalls", "count"))
65 print("%-40s %10s" % ("----------------------------------------",64 print("%-40s %10s" % ("----------------------------------------",
66 "----------"))65 "----------"))
67 66
68 comm_keys = syscalls.keys()67 comm_keys = syscalls.keys()
69 for comm in comm_keys:68 for comm in comm_keys:
70 pid_keys = syscalls[comm].keys()69 pid_keys = syscalls[comm].keys()
71 for pid in pid_keys:70 for pid in pid_keys:
72 print("\n%s [%d]" % (comm, pid))71 print("\n%s [%d]" % (comm, pid))
73 id_keys = syscalls[comm][pid].keys()72 id_keys = syscalls[comm][pid].keys()
74 for id, val in sorted(syscalls[comm][pid].items(), \73 for id, val in sorted(syscalls[comm][pid].items(),
75 key = lambda kv: (kv[1], kv[0]), reverse = True):74 key = lambda kv: (kv[1], kv[0]), reverse = True):
76 print(" %-38s %10d" % (syscall_name(id), val))75 print(" %-38s %10d" % (syscall_name(id), val))
tools/perf/scripts/python/syscall-counts.py+15−16
@@ -36,8 +36,8 @@ def trace_end(): · 35 unmodified lines
36 print_syscall_totals()36 print_syscall_totals()
37 37
38def raw_syscalls__sys_enter(event_name, context, common_cpu,38def raw_syscalls__sys_enter(event_name, context, common_cpu,
39 common_secs, common_nsecs, common_pid, common_comm,39 common_secs, common_nsecs, common_pid, common_comm,
40 common_callchain, id, args):40 common_callchain, id, args):
41 if for_comm is not None:41 if for_comm is not None:
42 if common_comm != for_comm:42 if common_comm != for_comm:
43 return43 return
@@ -47,20 +47,19 @@ def raw_syscalls__sys_enter(event_name, context, common_cpu, · 3 unmodified lines
47 syscalls[id] = 147 syscalls[id] = 1
48 48
49def syscalls__sys_enter(event_name, context, common_cpu,49def syscalls__sys_enter(event_name, context, common_cpu,
50 common_secs, common_nsecs, common_pid, common_comm,50 common_secs, common_nsecs, common_pid, common_comm, id, args):
51 id, args):
52 raw_syscalls__sys_enter(**locals())51 raw_syscalls__sys_enter(**locals())
53 52
54def print_syscall_totals():53def print_syscall_totals():
55 if for_comm is not None:54 if for_comm is not None:
56 print("\nsyscall events for %s:\n" % (for_comm))55 print("\nsyscall events for %s:\n" % (for_comm))
57 else:56 else:
58 print("\nsyscall events:\n")57 print("\nsyscall events:\n")
59 58
60 print("%-40s %10s" % ("event", "count"))59 print("%-40s %10s" % ("event", "count"))
61 print("%-40s %10s" % ("----------------------------------------",60 print("%-40s %10s" % ("----------------------------------------",
62 "-----------"))61 "-----------"))
63 62
64 for id, val in sorted(syscalls.items(), key = lambda kv: (kv[1], kv[0]), \63 for id, val in sorted(syscalls.items(),
65 reverse = True):64 key = lambda kv: (kv[1], kv[0]), reverse = True):
66 print("%-40s %10d" % (syscall_name(id), val))65 print("%-40s %10d" % (syscall_name(id), val))