You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

非sudo执行perf sched命令始终提示“broken or missing trace data”兼容问题求助

非sudo执行perf sched命令始终提示“broken or missing trace data”兼容问题求助

各位大佬好,我在Ubuntu 22.04(内核版本5.19.0-35-generic)上碰到了一个perf sched的诡异问题,想请教下大家怎么解决。

按照Brendan Gregg博客里的例子,用非sudo权限执行录制命令是正常的:

perf sched record -- sleep 1

输出也显示数据成功捕获:

[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 2.844 MB perf.data (11439 samples) ]

但不管我用哪个命令去读取生成的perf.data,全都会报错:

  • 执行perf script --header、perf sched script、perf sched latency或者perf sched map,得到的错误都是:
incompatible file format (rerun with -v to learn more)

加上-v参数看详细日志,也只看到提示broken or missing trace data:

perf script -v --header

输出:

build id event received for [kernel.kallsyms]: 77ab8542b6540fae3367bbb18a7aeede3c3b6f7b [20]
build id event received for [vdso]: f33b8f26bed889157b75129711599f9ca5ec9d0e [20]
broken or missing trace data
incompatible file format (rerun with -v to learn more)

我搜了一下,只找到一些旧的bug报告,试了里面的workaround比如:

perf script --header -i - < perf.data

结果还是报同样的错误,完全没用。

但奇怪的是,只要全程用sudo执行,不管是录制还是读取,一切都正常:

sudo perf sched record -- sleep 1

输出:

[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 3.875 MB perf.data (19424 samples) ]

之后执行sudo perf script --header就能正常输出profiling数据了。

有没有大佬知道为什么非sudo权限下会出现这个兼容性问题呀?

备注:内容来源于stack exchange,提问作者Federico

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 11:24:31