lkml.org 
[lkml]   [2015]   [Jul]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH RFC V7 6/7] perf,tools: per-event callgraph support
On Wed, Jul 29, 2015 at 05:42:15AM -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;
> +
> + /* If global callgraph set, clear it */
> + if (callchain_param.enabled) {
> + perf_evsel__reset_sample_bit(evsel, CALLCHAIN);
> + if (callchain_param.record_mode == CALLCHAIN_LBR) {
> + perf_evsel__reset_sample_bit(evsel, BRANCH_STACK);
> + attr->branch_sample_type &= ~(PERF_SAMPLE_BRANCH_USER |
> + PERF_SAMPLE_BRANCH_CALL_STACK);
> + }
> + if (callchain_param.record_mode == CALLCHAIN_DWARF) {
> + perf_evsel__reset_sample_bit(evsel, REGS_USER);
> + perf_evsel__reset_sample_bit(evsel, STACK_USER);
> + }
> + }

please put code above into perf_evsel__reset_callgraph
ans place it close to perf_evsel__config_callgraph ;-)

other than that the change looks ok to me now

thanks,
jirka


\
 
 \ /
  Last update: 2015-07-30 18:21    [W:0.092 / U:0.500 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site