Re: [PATCH RFC V8 3/4] perf,tools: per-event callgraph support

From: Jiri Olsa
Date: Wed Aug 05 2015 - 03:22:12 EST


On Tue, Aug 04, 2015 at 04:30:21AM -0400, Kan Liang wrote:

SNIP

> +
> + /* User explicitly set per-event callgraph, clear the old setting and reset. */
> + if ((callgraph_buf != NULL) || (dump_size > 0)) {
> +
> + /* parse callgraph parameters */
> + if (callgraph_buf != NULL) {
> + if (!strcmp(callgraph_buf, "no")) {
> + param.enabled = false;
> + param.record_mode = CALLCHAIN_NONE;
> + } else {
> + param.enabled = true;
> + if (parse_callchain_record_opt(callgraph_buf, &param)) {
> + pr_err("per-event callgraph setting for %s failed. "
> + "Apply callgraph global setting for it\n",
> + evsel->name);
> + return;
> + }
> + }
> + }
> + if (dump_size > 0)
> + param.dump_size = dump_size;

the parse_callchain_record_opt does some rounding on the stack size value
via the get_stack_size function, so following command like does not fail:

$ perf record --call-graph='dwarf,819' ls

while the term syntax fails:
$ perf record -e 'cpu/cpu-cycles,call-graph=dwarf,stack-size=819/

Error:
The sys_perf_event_open() syscall returned with 22 (Invalid argument) for event (cpu/cpu-cycles,time=0,call-graph=dwarf,stack-size=819/).
/bin/dmesg may provide additional information.
No CONFIG_PERF_EVENTS=y kernel support configured?


jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/