19.10. perf가 일부 함수 이름을 원시 함수 주소로 표시하는 이유
커널 함수의 경우, perf
는 /proc/kallsyms
파일의 정보를 사용하여 샘플을 각 함수 이름 또는 기호에 매핑합니다. 그러나 사용자 공간으로 실행되는 함수의 경우 바이너리가 제거되었기 때문에 원시 함수 주소가 표시될 수 있습니다.
실행 파일의 debuginfo
패키지를 설치하거나 실행 파일이 로컬에서 개발된 애플리케이션인 경우 이러한 상황에서 함수 이름 또는 기호를 표시하려면 애플리케이션(G의 -g
옵션)이 켜진 디버깅 정보로 컴파일해야 합니다.
참고
실행 파일과 연결된 debuginfo
를 설치한 후 perf record
명령을 다시 실행할 필요가 없습니다. perf report
명령을 다시 실행하면 됩니다.
추가 리소스