Re: diagnosing unexpected sched_stat_wait
From: Jonah Petri <hidden>
Date: 2016-03-07 14:53:20
On Mon, Mar 7, 2016 at 9:28 AM, Arnaldo Carvalho de Melo [off-list ref] wrote:
quoted
I have gone down that route, but I don't get user stack traces at all. I suspect this is because I'm on ARM 3.14.52, which does not support CONFIG_USER_STACKTRACE_SUPPORT. Nor does it support CONFIG_ARCH_SUPPORTS_UPROBES. All that said, I DO get stack traces when using straight perf record with "--call-graph dwarf". (Does that imply "-e cpu-clock"?). So, IOk, good data point, as what 'perf record --callgraph dwarf' does is to take register and userland stack samples so that later it can use it together with CFI information from the binaries involved to do the stack unwinding.
Right, that's my understanding as well. Given that I do get stack traces in some cases, this makes me wonder what the difference between the events which yield user stack traces (seemingly "Software event" in perf list) and events which do not yield user stack traces (seemingly "Tracepoint" in perf list). My next steps are to work through these mechanisms and try to understand the difference.
quoted
was hoping that whatever is enabling that event to get stack traces might be available to me.So what you are not managing to do is to collect userland stacktraces from tracepoints, right?
Correct.
Any ARM person here to try to help diagnose why this does work on x86_64 but not on ARM?
Any pointers appreciated! Thanks! Jonah