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 / opensnoop.kp
1 #!/usr/local/bin/ktap -q
2 #
3 # opensnoop.kp  trace open syscalls with pathnames and basic info
4 #
5 # 23-Nov-2013   Brendan Gregg   Created this
6
7 path = {}
8
9 printf("%5s %6s %-12s %3s %3s %s\n", "UID", "PID", "COMM", "FD", "ERR", "PATH");
10
11 trace syscalls:sys_enter_open {
12         path[tid()] = user_string(arg2)
13 }
14
15 trace syscalls:sys_exit_open {
16         local fd
17         local errno
18
19         if (arg2 < 0) {
20                 fd = 0
21                 errno = -arg2
22         } else {
23                 fd = arg2
24                 errno = 0
25         }
26
27         printf("%5d %6d %-12s %3d %3d %s\n", uid(), pid(), execname(), fd,
28             errno, path[tid()])
29
30         path[tid()] = 0
31 }