[RFC] perf record: missing buildid for callstack modules -- again

From: Alexander Lochmann
Date: Sat Jun 25 2016 - 12:30:24 EST


Hi folks!

As mentioned by this discussion https://lkml.org/lkml/2016/1/7/661, perf
does not record the build id for modules, which are hit on the way down
the callstack.
Sadly that issue is not completely fixed by the cmd argument --buildid-all.
In my case, I have my own kernel module starting a kernel thread. It
does some stuff, and calls schedule from time to time.
If I start perf like this

perf record -e sched:sched_stat_sleep -e sched:sched_switch -a -g -o
perf.data.raw -p <pid> -- sleep 10

, it records the callstacks for those three events.
Afterwards I want to do some post processing to generate a cold graph:

perf inject -v -s -i perf.data.raw -o perf.data

That step fails ('failed to write feature 2') due to the lack of a
build-id for my module, which isn't included in perf.data.raw.

Can anyone confirm that this is a bug?
Does anyone have a workaround for it?

Thanks in advance!

Cheers,
Alex

P.S.: Pls put me in CC, because I'm not subscribed to the mailinglist.
--
Technische UniversitÃt Dortmund
Alexander Lochmann PGP key: 0xBC3EF6FD
Otto-Hahn-Str. 16 phone: +49.231.7556141
D-44227 Dortmund fax: +49.231.7556116
http://ess.cs.tu-dortmund.de/Staff/al

Attachment: signature.asc
Description: OpenPGP digital signature