Hi Milian, On Thu, 2017-06-01 at 22:57 +0200, Milian Wolff wrote: > How should I debug this, or how can I report a good bug report for this? I > guess I could upload a perf archive and document the steps required to build > perf with libdw as the unwinder, as it allows to easily compare libunwind and > libdw for unwinding.
I am reading the rest of you messages in this thread now and it seems you did find the issue already. But the above would still be useful if you happen to have the instructions already written down. I was actually looking at perf recently and couldn't immediately figure out how to build it. It seems it depends on a whole kernel build. But if there is an easy way to just build perf (with a variant that uses libunwind and libdw) that would be useful in general I think. More in general debugging the unwinder is indeed too hard. There are some failures that are ignored because it isn't immediately clear whether they are fatal. e.g. you might be unable to recover some register value that then isn't ever used for a simple backtrace, or you might not find the CFI for a pc address, but want to use the fallback unwinder in that case. Maybe we should add a debug mode configuration that compiles in tracing output of the unwinder operations? Thanks, Mark