效能錯誤:無法使用 25 進行 mmap(設備的 ioctl 不合適)

效能錯誤:無法使用 25 進行 mmap(設備的 ioctl 不合適)

我正在嘗試在具有 3.8 Linux 核心的系統中使用 perf。當我使用以下命令時,發生錯誤:

$ perf record -c 100000 -e '{cycles,instructions}:S' ./nonloop 1000
failed to mmap with 25 (Inappropriate ioctl for device)
nonloop: Terminated

誰能告訴我如何解決這個問題?

答案1

看起來 :S 是問題所在。

效能記錄-c 100000-ecycles,指令./somebin

運作良好。什麼是:S?

我在運行時看到類似的錯誤:

sudo perf record -esyscalls:sys_enter -p $(pidof some_bin)

無法使用 22 進行對應(參數無效)

其中 perf list 建議 syscalls:sys_enter 應該可用。

相關內容