планирование perf, отличное от sudo, всегда завершается сбоем из-за «сломанных или отсутствующих данных трассировки»

На моем Ubuntu 22.04 (5.19.0-35-generic) кажется, чтоperf schedне способен разобрать свой собственныйperf.dataвыход. Согласно примерам из блога Брендана Грегга, запись работает нормально.

      # perf sched record -- sleep 1
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 2.844 MB perf.data (11439 samples) ]

Однако любая моя попытка прочитать данные профилирования терпит неудачу:

      # perf script --header
incompatible file format (rerun with -v to learn more)
      # perf sched script
incompatible file format (rerun with -v to learn more)
      # perf sched latency
incompatible file format (rerun with -v to learn more)
      # perf sched map
incompatible file format (rerun with -v to learn more)

Подробный вывод просто сообщаетbroken or missing trace data:

      # perf script -v --header
build id event received for [kernel.kallsyms]: 77ab8542b6540fae3367bbb18a7aeede3c3b6f7b [20]
build id event received for [vdso]: f33b8f26bed889157b75129711599f9ca5ec9d0e [20]
broken or missing trace data
incompatible file format (rerun with -v to learn more)

Немного погуглив, я нашел только старые отчеты об ошибках, но их обходные пути к моему случаю не применимы:

      # perf script --header -i - < perf.data
incompatible file format (rerun with -v to learn more)

Более того, я обнаружил, что выполнение тех же команд сsudoработает отлично:

      # sudo perf sched record -- sleep 1
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 3.875 MB perf.data (19424 samples) ]
      # sudo perf script --header
<output>

Есть идеи, в чем проблема с командами, отличными от sudo?

0 ответов

Другие вопросы по тегам