lkml.org 
[lkml]   [2012]   [Jan]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] perf: fix broken perf inject -b
    Em Fri, Jan 13, 2012 at 03:47:31PM +0100, Stephane Eranian escreveu:
    >
    > perf inject -b was broken. It would not inject any build_ids
    > into the stream. Furthermore, it would strip samples from the
    > stream.

    Against which tree is this patch?

    > The reason was a missing initialization of the event attribute
    > structures. The perf_tool.tool.attr() callback was pointing to
    > a simple repipe. But there was no initialization of internal data
    > structures to keep track of events and event ids. That later caused
    > event id lookups to fail, and samples would get dropped.
    >
    > The patch simply adds back the call to perf_event__process_attr()
    > to initialize the evlist structure. Build_ids are again injected.
    > The PID is also inject for PERF_RECORD_HEADER_BUILD_ID.
    >
    > Signed-off-by: Stephane Eranian <eranian@google.com>
    > ---
    >
    > diff --git a/tools/perf/builtin-inject.c b/tools/perf/builtin-inject.c
    > index 09c1061..f38f370 100644
    > --- a/tools/perf/builtin-inject.c
    > +++ b/tools/perf/builtin-inject.c
    > @@ -60,6 +60,11 @@ static int perf_event__repipe_tracing_data_synth(union perf_event *event,
    > static int perf_event__repipe_attr(union perf_event *event,
    > struct perf_evlist **pevlist __used)
    > {
    > + int ret;
    > + ret = perf_event__process_attr(event, pevlist);
    > + if (ret)
    > + return ret;
    > +
    > return perf_event__repipe_synth(NULL, event, NULL);
    > }
    >
    > @@ -173,6 +178,7 @@ static int perf_event__inject_buildid(struct perf_tool *tool,
    > event->header.type);
    > goto repipe;
    > }
    > + machine->pid = event->ip.pid;
    >
    > thread__find_addr_map(thread, machine, cpumode, MAP__FUNCTION,
    > event->ip.ip, &al);


    \
     
     \ /
      Last update: 2012-01-13 17:55    [W:0.023 / U:1.936 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site