LINUX-KERNEL:Perf 报告共享对象在 ARM 上显示未知

use*_*327 5 linux-kernel perf

perf15 天以来我一直面临着一个相关问题。希望这里的大佬们能帮我解决这个问题。

我需要让perf工具在具有 ARM 架构的设备上运行。但是,在记录跟踪点事件然后运行./perf报告时,它显示共享对象名称为[unknown],符号为00000,而对于软件和硬件事件,我没有遇到此问题。我已经交叉编译了perfmailine上可用的工具并将其移植到具有ARM架构的设备上。

在内核 3.4 的基于 ARM 的设备上输出。

./perf record -e kmem:kmalloc cal

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

./perf report 

Overhead        Command          Shared Object                  Symbol
.......     .............      ..............               ...............
40.78%           cal                [unknown]                [.]00000000
31.6%            cal                [unknown]                [.]00000000

[...]
Run Code Online (Sandbox Code Playgroud)

在 ubuntu 12.04 系统(内核 3.10)上它工作得很好。

x86 架构上的输出

./perf record -e kmem:kmalloc gcalctool

[ perf record: Woken up 3 times to write data ]
[ perf record: Captured and wrote 0.27 MB perf.data (~845 samples) ]

./perf report --stdio

Overhead       Command            Shared Object                  Symbol   
...........   .........   ............                  ............
96.55%         cal           [kernel.kallsyms]             [k] kmem_cache_alloc_trace
3.45%          cal           [kernel.kallsyms]            [.]__kmalloc

[...]
Run Code Online (Sandbox Code Playgroud)

热切地等待您的帮助。

谢谢。