Re: [PATCH v2 1/2] perf callchain: Create an address space per thread

From: Arnaldo Carvalho de Melo
Date: Tue Sep 30 2014 - 09:17:58 EST


Em Tue, Sep 30, 2014 at 03:11:21PM +0900, Namhyung Kim escreveu:
>
> On Mon, 29 Sep 2014 10:34:52 +0200, Jiri Olsa wrote:
> > On Mon, Sep 29, 2014 at 01:58:11PM +0900, Namhyung Kim wrote:
> >> @@ -37,6 +38,9 @@ struct thread *thread__new(pid_t pid, pid_t tid)
> >> thread->cpu = -1;
> >> INIT_LIST_HEAD(&thread->comm_list);

> >> + if (unwind__prepare_access(thread) < 0)
> >> + goto err_thread;

> > So this is something we need to do only for DWARF unwind via libunwind.
> > Do we want some condition to bypass this in for the rest of the cases?

> Ah, you're right, we need to check that before doing this.

> > I think we could check for symbol_conf.use_callchain and for the
> > PERF_SAMPLE_REGS_USER|PERF_SAMPLE_STACK_USER sample types in evlist,
> > something like:

> > bool has_dwarf_data_for_callchains = symbol_conf.use_callchain && evlist_sample_type_has(evlist, PERF_SAMPLE_REGS_USER|PERF_SAMPLE_STACK_USER)

> Hmm.. it seems that it's hard to get the evlist at this point. Maybe we
> need to add a field in the symbol_conf or a global variable.. :/

Please don't export evlist in a global way, just set some flag on
symbol_conf.

At some point we need to ditch even symbol_conf :-\

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