Joh*_*nck 5 linux linux-kernel perf
有明显一些Linux专柜perf一样syscall:sys_enter_select,但我的系统上perf list不显示任何人
其他人确实有这些计数器的证据在这里:http : //www.brendangregg.com/blog/2014-07-03/perf-counting.html
如果我运行perf top -e 'syscalls:sys_enter_*'它说:
Can't open event dir: Permission denied
invalid or unsupported event: 'syscalls:sys_enter_*'
Run Code Online (Sandbox Code Playgroud)
其他事件类型( 中的perf list)工作正常。
我需要做什么来访问系统调用计数器perf?我在 x86_64 上使用 Linux 内核和 perf 版本 3.10。
某些perf计数器(包括所有计数器)syscall仅对 root 用户可用。 sudo perf list将显示所有计数器,包括syscall假设内核是用它构建的计数器CONFIG_HAVE_SYSCALL_TRACEPOINTS(请参阅 Grisha Levit 对此的回答)。
因此,为了perf top -e 'syscalls:sys_enter_*'工作,请在sudo-- 即使您不需要sudo其他计数器(如cycles.