perf: add path to debug symbols

Модератор: Модераторы разделов

IMB
Сообщения: 2476
ОС: Debian

perf: add path to debug symbols

Сообщение IMB »

Доброго дня!
Плата на ARM SoC, linux-3.10.33, некая программа при неких действиях жутко тормозит. Собрал perf и во время некорректной работы собрал статистику командой

Код: Выделить всё

perf record -p PID -ag
, созданный perf.data перенёс себе на хост и хочу через perf report проанализировать его.
Сам файл perf.data нормально открывается и отображается некая статистика с графом вызовов, но неудобство выражается в том, что вместо названия функций отображаются их адреса, для решения этого я попробовал
- положить бинарник с отладочными символами в тужу директорию
- указать путь до бинарника с отладочными символами через параметр --symfs
Ничто не помогает, а при добавлении параметра -v выводится Failed to open /usr/sbin/app, continuing without symbols, копирование приложения и отладных символов в /usr/sbin проблемы не решило.
Возможно ли perf-у указать путь до отладочных символов аналогично тому как это можно сделать gdb?
Спасибо.
Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 16928
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: perf: add path to debug symbols

Сообщение Bizdelnick »

IMB писал(а):
17.12.2019 14:08
указать путь до бинарника с отладочными символами через параметр --symfs
Я так понимаю, там надо указывать путь не до бинарника, а до корня, то есть до каталога, в котором находится usr/sbin/app.
Но вообще я не уверен, что это в принципе может работать при переносе на другую систему, где perf собран под совершенно другое ядро.
Пишите правильно:
в консоли
вкупе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

IMB
Сообщения: 2476
ОС: Debian

Re: perf: add path to debug symbols

Сообщение IMB »

С linux, насколько я понял всё существенно проще, через -k указывается путь до нужного vmlinux, но мне надо работать с приложением.
Спасибо сказали:

Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8253
Статус: Маньяк
ОС: Arch, CentOS, Ubuntu

Re: perf: add path to debug symbols

Сообщение serzh-z »

А map-файлы перенесли? Из /tmp.
Спасибо сказали:

IMB
Сообщения: 2476
ОС: Debian

Re: perf: add path to debug symbols

Сообщение IMB »

Какие map-файлы? perf создаёт perf.data, его я забрал.
Спасибо сказали:

IMB
Сообщения: 2476
ОС: Debian

Re: perf: add path to debug symbols

Сообщение IMB »

Заметил ещё одну проблему, сейчас perf собран без поддержки elf и dwarf, надо поковырять.
Спасибо сказали:

Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8253
Статус: Маньяк
ОС: Arch, CentOS, Ubuntu

Re: perf: add path to debug symbols

Сообщение serzh-z »

IMB писал(а):
17.12.2019 14:56
Какие map-файлы? perf создаёт perf.data, его я забрал.
Он в /tmp создаёт файлы с меппингом адресов в символы для тех форматов, в которые не может заглянуть сам. Но это не точно. :)
Спасибо сказали:

IMB
Сообщения: 2476
ОС: Debian

Re: perf: add path to debug symbols

Сообщение IMB »

После пересборки perf с ранее предсобранным elfutil (https://sourceware.org/elfutils/), отдельное спасибо за аторам perf за Makefile не позволяющий указать пути до стороних библиотек, и использовании debug-версий на target perf report стал отображать символы.
Конечно не так удобно как хотелось бы, но лучше чем ничего.
Спасибо сказали: