我正在使用该perf
工具的4.1内核和4.1版进行debian测试。在此版本中,他们似乎添加了某种保护措施,以防止普通用户从该工具收集数据。因此,perf
以普通用户身份运行会出现以下错误:
perf stat ls
Error:
You may not have permission to collect stats.
Consider tweaking /proc/sys/kernel/perf_event_paranoid:
-1 - Not paranoid at all
0 - Disallow raw tracepoint access for unpriv
1 - Disallow cpu events for unpriv
2 - Disallow kernel profiling for unpriv
perf_event_paranoid
在我的安装中包含3。不幸的是,即使是root用户,我也无法更改该文件。如何允许我自己的用户在perf
没有sudo权限的情况下使用?
我有一个我想对其进行基准测试的应用程序,该应用程序不需要root,也不想以root用户身份对其进行基准测试。
@osgx:对于偏执狂级别3的我,您的建议不起作用,我仍然不被允许使用。
—
马丁·乌丁
perf stat -e cycles:u
工作吗?perf_event_paranoid
在2016 lwn.net/Articles/696216 “不允许perf_event_open()”中添加了“ 3”值,并在“ Android和Debian”中启用了此值(也是lkml.org/lkml/2016/1/11/587 bugs.launchpad。净/错误/ 1612790 debian.org/security/2017/dsa-3791)