Re: [PATCH 4/5] perf tools: Introduce perf_callchain_config()

From: Namhyung Kim
Date: Mon Sep 22 2014 - 11:19:23 EST


2014-09-22 (ì), 16:24 +0200, Jiri Olsa:
> On Sun, Sep 21, 2014 at 01:18:05AM +0900, Namhyung Kim wrote:
>
> SNIP
>
> > +int perf_callchain_config(const char *var, const char *value)
> > +{
> > + if (prefixcmp(var, "call-graph."))
> > + return 0;
> > + var += 11; /* strlen("call-graph.") == 11 */
> > +
> > + if (!strcmp(var, "record-mode"))
> > + return parse_callchain_record_opt(value);
> > +#ifdef HAVE_DWARF_UNWIND_SUPPORT
> > + if (!strcmp(var, "dump-size")) {
> > + unsigned long size = 0;
> > + int ret;
> > +
> > + ret = get_stack_size(value, &size);
> > + callchain_param.dump_size = size;
> > +
> > + return ret;
> > + }
> > +#endif
> > + if (!strcmp(var, "print-type"))
> > + return parse_callchain_report_opt(value);
> > + if (!strcmp(var, "order"))
> > + return parse_callchain_report_opt(value);
> > + if (!strcmp(var, "threshold"))
> > + return parse_callchain_report_opt(value);
> > + if (!strcmp(var, "print-limit"))
> > + return parse_callchain_report_opt(value);
> > + if (!strcmp(var, "sort-key"))
> > + return parse_callchain_report_opt(value);
>
> so this allows to spcify option like:
>
> [call-graph]
> sort-key = caller,function,1
>
> which might be confusing for someone.. personaly I'm ok with that,
> I'm just raising it, because it's not apparent and not sure how
> strict we want to be in here ;-)

Right, I just reused parse_callchain_{record,report}_opt() functions to
simplify the code.

Hmm.. now I rethink that at least threshold and print-limit will be
treated differently as parse_callchain_report_opt() implies an order of
them. Will change in the next version.

Thanks,
Namhyung



--
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/