On 2016/11/15 12:05, Wang Nan wrote:
$ sudo -s # ulimit -l unlimited # perf record -e ./count_syscalls.c echo "Haha" Start count, perfpid=25209 Haha [ perf record: Woken up 1 times to write data ] syscall 8 count: 6 syscall 11 count: 1 syscall 4 count: 6 syscall 21 count: 1 syscall 5 count: 3 syscall 231 count: 1 syscall 45 count: 3 syscall 0 count: 24 syscall 257 count: 1 syscall 59 count: 4 syscall 23 count: 9 syscall 78 count: 2 syscall 41 count: 4 syscall 72 count: 8 syscall 10 count: 3 syscall 321 count: 1 syscall 298 count: 7 syscall 16 count: 21 syscall 9 count: 16 syscall 1 count: 114 syscall 12 count: 3 syscall 14 count: 35 syscall 158 count: 1 syscall 2 count: 15 syscall 7 count: 18 syscall 3 count: 11 [ perf record: Captured and wrote 0.011 MB perf.data ]
Note that this example counts system wide syscall histogram, not only 'echo' proc. The in-kernel BPF script doesn't know pid of 'echo' so can't filter base on it. I'm planning adding more perf hook points to pass information like this. Thank you.