diff options
author | Jiri Olsa <jolsa@kernel.org> | 2015-10-25 15:51:36 +0100 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2015-12-17 15:10:16 -0300 |
commit | ffe777254cce24fb5fde3f0aa91fc755cfb1b812 (patch) | |
tree | 031bd8a6ea7d7fecf8d1841f70d54f2771b55be7 /tools/perf/util/header.c | |
parent | e08a4564e23f8f89a055d717887674f54a9da515 (diff) | |
download | lwn-ffe777254cce24fb5fde3f0aa91fc755cfb1b812.tar.gz lwn-ffe777254cce24fb5fde3f0aa91fc755cfb1b812.zip |
perf tools: Add event_update user level event
It'll serve as a base event for additional event attributes details,
that are not part of the attr event.
At the moment this event is just a dummy one without any specific
functionality. The type value will distinguish the update event details.
It'll come in the following patches.
The idea for this event is to be extensible for any update that the
event might need in the future.
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Tested-by: Kan Liang <kan.liang@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1445784728-21732-21-git-send-email-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/header.c')
-rw-r--r-- | tools/perf/util/header.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tools/perf/util/header.c b/tools/perf/util/header.c index 5ac7bdb0dff7..6b4e00220a5a 100644 --- a/tools/perf/util/header.c +++ b/tools/perf/util/header.c @@ -2745,6 +2745,26 @@ int perf_event__process_attr(struct perf_tool *tool __maybe_unused, return 0; } +int perf_event__process_event_update(struct perf_tool *tool __maybe_unused, + union perf_event *event, + struct perf_evlist **pevlist) +{ + struct event_update_event *ev = &event->event_update; + struct perf_evlist *evlist; + struct perf_evsel *evsel; + + if (!pevlist || *pevlist == NULL) + return -EINVAL; + + evlist = *pevlist; + + evsel = perf_evlist__id2evsel(evlist, ev->id); + if (evsel == NULL) + return -EINVAL; + + return 0; +} + int perf_event__synthesize_tracing_data(struct perf_tool *tool, int fd, struct perf_evlist *evlist, perf_event__handler_t process) |