diff options
Diffstat (limited to 'tools/perf/builtin-inject.c')
| -rw-r--r-- | tools/perf/builtin-inject.c | 89 | 
1 files changed, 51 insertions, 38 deletions
diff --git a/tools/perf/builtin-inject.c b/tools/perf/builtin-inject.c index 0c78ffa7bf67..8dfc12bb119b 100644 --- a/tools/perf/builtin-inject.c +++ b/tools/perf/builtin-inject.c @@ -16,8 +16,8 @@  static char		const *input_name = "-";  static bool		inject_build_ids; -static int event__repipe_synth(event_t *event, -			       struct perf_session *session __used) +static int perf_event__repipe_synth(union perf_event *event, +				    struct perf_session *session __used)  {  	uint32_t size;  	void *buf = event; @@ -36,41 +36,52 @@ static int event__repipe_synth(event_t *event,  	return 0;  } -static int event__repipe(event_t *event, struct sample_data *sample __used, -			 struct perf_session *session) +static int perf_event__repipe(union perf_event *event, +			      struct perf_sample *sample __used, +			      struct perf_session *session)  { -	return event__repipe_synth(event, session); +	return perf_event__repipe_synth(event, session);  } -static int event__repipe_mmap(event_t *self, struct sample_data *sample, +static int perf_event__repipe_sample(union perf_event *event, +			      struct perf_sample *sample __used, +			      struct perf_evsel *evsel __used,  			      struct perf_session *session)  { +	return perf_event__repipe_synth(event, session); +} + +static int perf_event__repipe_mmap(union perf_event *event, +				   struct perf_sample *sample, +				   struct perf_session *session) +{  	int err; -	err = event__process_mmap(self, sample, session); -	event__repipe(self, sample, session); +	err = perf_event__process_mmap(event, sample, session); +	perf_event__repipe(event, sample, session);  	return err;  } -static int event__repipe_task(event_t *self, struct sample_data *sample, -			      struct perf_session *session) +static int perf_event__repipe_task(union perf_event *event, +				   struct perf_sample *sample, +				   struct perf_session *session)  {  	int err; -	err = event__process_task(self, sample, session); -	event__repipe(self, sample, session); +	err = perf_event__process_task(event, sample, session); +	perf_event__repipe(event, sample, session);  	return err;  } -static int event__repipe_tracing_data(event_t *self, -				      struct perf_session *session) +static int perf_event__repipe_tracing_data(union perf_event *event, +					   struct perf_session *session)  {  	int err; -	event__repipe_synth(self, session); -	err = event__process_tracing_data(self, session); +	perf_event__repipe_synth(event, session); +	err = perf_event__process_tracing_data(event, session);  	return err;  } @@ -109,8 +120,8 @@ static int dso__inject_build_id(struct dso *self, struct perf_session *session)  	if (self->kernel)  		misc = PERF_RECORD_MISC_KERNEL; -	err = event__synthesize_build_id(self, misc, event__repipe, -					 machine, session); +	err = perf_event__synthesize_build_id(self, misc, perf_event__repipe, +					      machine, session);  	if (err) {  		pr_err("Can't synthesize build_id event for %s\n", self->long_name);  		return -1; @@ -119,8 +130,10 @@ static int dso__inject_build_id(struct dso *self, struct perf_session *session)  	return 0;  } -static int event__inject_buildid(event_t *event, struct sample_data *sample, -				 struct perf_session *session) +static int perf_event__inject_buildid(union perf_event *event, +				      struct perf_sample *sample, +				      struct perf_evsel *evsel __used, +				      struct perf_session *session)  {  	struct addr_location al;  	struct thread *thread; @@ -155,24 +168,24 @@ static int event__inject_buildid(event_t *event, struct sample_data *sample,  	}  repipe: -	event__repipe(event, sample, session); +	perf_event__repipe(event, sample, session);  	return 0;  }  struct perf_event_ops inject_ops = { -	.sample		= event__repipe, -	.mmap		= event__repipe, -	.comm		= event__repipe, -	.fork		= event__repipe, -	.exit		= event__repipe, -	.lost		= event__repipe, -	.read		= event__repipe, -	.throttle	= event__repipe, -	.unthrottle	= event__repipe, -	.attr		= event__repipe_synth, -	.event_type 	= event__repipe_synth, -	.tracing_data 	= event__repipe_synth, -	.build_id 	= event__repipe_synth, +	.sample		= perf_event__repipe_sample, +	.mmap		= perf_event__repipe, +	.comm		= perf_event__repipe, +	.fork		= perf_event__repipe, +	.exit		= perf_event__repipe, +	.lost		= perf_event__repipe, +	.read		= perf_event__repipe, +	.throttle	= perf_event__repipe, +	.unthrottle	= perf_event__repipe, +	.attr		= perf_event__repipe_synth, +	.event_type 	= perf_event__repipe_synth, +	.tracing_data 	= perf_event__repipe_synth, +	.build_id 	= perf_event__repipe_synth,  };  extern volatile int session_done; @@ -190,10 +203,10 @@ static int __cmd_inject(void)  	signal(SIGINT, sig_handler);  	if (inject_build_ids) { -		inject_ops.sample	= event__inject_buildid; -		inject_ops.mmap		= event__repipe_mmap; -		inject_ops.fork		= event__repipe_task; -		inject_ops.tracing_data	= event__repipe_tracing_data; +		inject_ops.sample	= perf_event__inject_buildid; +		inject_ops.mmap		= perf_event__repipe_mmap; +		inject_ops.fork		= perf_event__repipe_task; +		inject_ops.tracing_data	= perf_event__repipe_tracing_data;  	}  	session = perf_session__new(input_name, O_RDONLY, false, true, &inject_ops);  | 
