Re: [PATCH] perf sched replay: fix event lookup

Namhyung Kim
2012-06-12T06:04:28Z

Hi,

On Mon, 11 Jun 2012 11:08:52 -0300, Arnaldo Carvalho de Melo wrote:
> Em Mon, Jun 11, 2012 at 02:46:02PM +0900, Namhyung Kim escreveu:
>> On Sat, 9 Jun 2012 13:05:58 +0400, Dmitry Antipov wrote:
>> > Use new function trace_find_event_by_name to lookup events before
>> > looking through /sys files. This helps 'perf sched replay' to map
>> > event names to IDs correctly when processing perf.data recorded
>> > on another machine.
>>
>> Basically the same approach with the previous reply, please put this
>> into trace_event__id(). And minor nits below..
>
> Well, trace_event__id() is private to evlist and evlist so far is a
> local thing, i.e. it doesn't know anything about perf.data files.
>

Really? I see that perf_session__open make up an evlist for the session
and a tracepoint event in the evlist should look up the perf.data
first. As this patch addressed, perf sched replay dealt with the
session->evlist already. Am I missing something?

> So I think we should have a per perf.data (perf_session) method that
> knows that it shouldn't look _at all_ to /sys, but just at what came in
> the perf.data file.
>

Fair enough. The method should be a simple wrapper to libtraceevent APIs
like this patch.

> As well when we want something that is on the running machine, even if
> we're dealing somehow with a perf.data file, we shouldn't use what is in
> it.
>

That's the current behavior of the trace_event__id(). Do you want to
make it public?

Thanks,
Namhyung