Merge tag 'v3.14.25' into backport/v3.14.24-ltsi-rc1+v3.14.25/snapshot-merge.wip
[platform/adaptation/renesas_rcar/renesas_kernel.git] / drivers / staging / ktap / samples / syscalls / syslist.kp
1 #!/usr/bin/env ktap
2 #
3 # syslist.kp    syscall latency as a list with counts
4 #
5 # 10-Nov-2013   Brendan Gregg   Created this
6
7 self = {}
8 lats = {}
9 order = {}  # a workaround for key sorting
10
11 trace syscalls:sys_enter_* {
12     self[tid()] = gettimeofday_us()
13 }
14
15 trace syscalls:sys_exit_* {
16     if (self[tid()] == nil) { return }
17     delta = gettimeofday_us() - self[tid()]
18     lats[delta] += 1
19     order[delta] = delta
20     self[tid()] = nil
21 }
22
23 trace_end {
24     printf("   %8s %8s\n", "LAT(us)", "COUNT");
25     function cmp(v1, v2) {
26         return (v1 < v2)
27     }
28     for (lat, dummy in sort_pairs(order, cmp)) {
29         printf("   %8d %8d\n", lat, lats[lat]);
30     }
31 }