perf tools: Add stat event synthesize function
Introduce the perf_event__synthesize_stat function to synthesize a 'struct stat_event'. 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-16-git-send-email-jolsa@kernel.org [ Renamed 'stat' parameter to 'st' to fix 'already defined' build error with older distros (e.g. RHEL6.7) ] Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:

committed by
Arnaldo Carvalho de Melo

parent
d80518c90b
commit
5796f8f073
@@ -910,6 +910,28 @@ int perf_event__synthesize_stat_config(struct perf_tool *tool,
|
||||
return err;
|
||||
}
|
||||
|
||||
int perf_event__synthesize_stat(struct perf_tool *tool,
|
||||
u32 cpu, u32 thread, u64 id,
|
||||
struct perf_counts_values *count,
|
||||
perf_event__handler_t process,
|
||||
struct machine *machine)
|
||||
{
|
||||
struct stat_event event;
|
||||
|
||||
event.header.type = PERF_RECORD_STAT;
|
||||
event.header.size = sizeof(event);
|
||||
event.header.misc = 0;
|
||||
|
||||
event.id = id;
|
||||
event.cpu = cpu;
|
||||
event.thread = thread;
|
||||
event.val = count->val;
|
||||
event.ena = count->ena;
|
||||
event.run = count->run;
|
||||
|
||||
return process(tool, (union perf_event *) &event, NULL, machine);
|
||||
}
|
||||
|
||||
void perf_event__read_stat_config(struct perf_stat_config *config,
|
||||
struct stat_config_event *event)
|
||||
{
|
||||
|
Reference in New Issue
Block a user