Re: oprofile callgraph support missing for common cpus
From: Joakim Tjernlund <hidden>
Date: 2011-11-17 21:27:51
Andy Fleming [off-list ref] wrote on 2011/11/17 18:51:52:
On Nov 17, 2011, at 11:30 AM, Maynard Johnson wrote:quoted
quoted
Notice the first if (!cur_cpu_spec->oprofile_cpu_type) return -ENODEV; if (firmware_has_feature(FW_FEATURE_ISERIES)) return -ENODEV; For my e300c2 cpu both if's are false and I don't get support for callgraph/backtrace support. Moving the ops->backtrace = op_powerpc_backtrace; to the top enables backtrace for me.What kernel version are you using? Actually, looking at a 3.0.3 tree I happen to have available, I see oprofile h/w event support (in arch/powerpc/kernel/cputable.c) for e300c3 and e300c4, but not the other e300 flavors. I've added Andy Flemming from Freescale to cc. Maybe he knows why e300c2
isn't supported.
e300c2 does not have hardware performance monitor events. However, it should be able to support timer-based profiling, right? And why not support backtrace from there? Do we require hardware counters to get a backtrace?
It sure seems to work :) If it doesn't, one needs to make sure /dev/oprofile/backtrace_depth isn't published as it is now. Question, what is the sample rate for timer based oprofile? Is it HZ depended? Jocke