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 성능 기록 -esyscalls:sys_enter -p $(pidof some_bin) 22(잘못된 매개변수)를 사용하여 매핑할 수 없습니다.
그중 perf 목록에서는 syscalls:sys_enter를 사용할 수 있어야 한다고 제안합니다.