Support both Python2 and Python3 in the syscall-counts.py script There may be differences in the ordering of output lines due to differences in dictionary ordering etc. However the format within lines should be unchanged. The use of 'from __future__' implies the minimum supported Python2 version is now v2.6
Showing the changes to tools/perf/scripts/python (1 of 1 file). Show all
Unified · Split
| @@ -5,6 +5,8 @@ · 4 unmodified lines | ||
| 5 | 5 | # Displays system-wide system call totals, broken down by syscall. |
| 6 | 6 | # If a [comm] arg is specified, only syscalls called by [comm] are displayed. |
| 7 | 7 | |
| 8 | +from __future__ import print_function | |
| 9 | + | |
| 8 | 10 | import os |
| 9 | 11 | import sys |
| 10 | 12 | |
| @@ -28,7 +30,7 @@ if len(sys.argv) > 1: · 17 unmodified lines | ||
| 28 | 30 | syscalls = autodict() |
| 29 | 31 | |
| 30 | 32 | def trace_begin(): |
| 31 | − print "Press control+C to stop and show the summary" | |
| 33 | + print("Press control+C to stop and show the summary") | |
| 32 | 34 | |
| 33 | 35 | def trace_end(): |
| 34 | 36 | print_syscall_totals() |
| @@ -51,14 +53,14 @@ def syscalls__sys_enter(event_name, context, common_cpu, · 16 unmodified lines | ||
| 51 | 53 | |
| 52 | 54 | def print_syscall_totals(): |
| 53 | 55 | if for_comm is not None: |
| 54 | − print "\nsyscall events for %s:\n\n" % (for_comm), | |
| 56 | + print("\nsyscall events for %s:\n" % (for_comm)) | |
| 55 | 57 | else: |
| 56 | − print "\nsyscall events:\n\n", | |
| 58 | + print("\nsyscall events:\n") | |
| 57 | 59 | |
| 58 | − print "%-40s %10s\n" % ("event", "count"), | |
| 59 | − print "%-40s %10s\n" % ("----------------------------------------", \ | |
| 60 | − "-----------"), | |
| 60 | + print("%-40s %10s" % ("event", "count")) | |
| 61 | + print("%-40s %10s" % ("----------------------------------------", | |
| 62 | + "-----------")) | |
| 61 | 63 | |
| 62 | − for id, val in sorted(syscalls.iteritems(), key = lambda(k, v): (v, k), \ | |
| 64 | + for id, val in sorted(syscalls.items(), key = lambda kv: (kv[1], kv[0]), \ | |
| 63 | 65 | reverse = True): |
| 64 | − print "%-40s %10d\n" % (syscall_name(id), val), | |
| 66 | + print("%-40s %10d" % (syscall_name(id), val)) | |