diff options
| author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2012-08-17 10:57:56 +0400 | 
|---|---|---|
| committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2012-08-17 11:01:08 +0400 | 
| commit | a22ddff8bedfe33eeb1330bbb7ef1fbe007a42c4 (patch) | |
| tree | 61a2eb7fa62f5af10c2b913ca429e6b068b0eb2d /tools/perf/util/trace-event-parse.c | |
| parent | 20d5a540e55a29daeef12706f9ee73baf5641c16 (diff) | |
| parent | d9875690d9b89a866022ff49e3fcea892345ad92 (diff) | |
| download | linux-a22ddff8bedfe33eeb1330bbb7ef1fbe007a42c4.tar.xz | |
Merge tag 'v3.6-rc2' into drm-intel-next
Backmerge Linux 3.6-rc2 to resolve a few funny conflicts before we put
even more madness on top:
- drivers/gpu/drm/i915/i915_irq.c: Just a spurious WARN removed in
  -fixes, that has been changed in a variable-rename in -next, too.
- drivers/gpu/drm/i915/intel_ringbuffer.c: -next remove scratch_addr
  (since all their users have been extracted in another fucntion),
  -fixes added another user for a hw workaroudn.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'tools/perf/util/trace-event-parse.c')
| -rw-r--r-- | tools/perf/util/trace-event-parse.c | 61 | 
1 files changed, 27 insertions, 34 deletions
diff --git a/tools/perf/util/trace-event-parse.c b/tools/perf/util/trace-event-parse.c index df2fddbf0cd2..0715c843c2e7 100644 --- a/tools/perf/util/trace-event-parse.c +++ b/tools/perf/util/trace-event-parse.c @@ -32,29 +32,25 @@ int header_page_size_size;  int header_page_ts_size;  int header_page_data_offset; -struct pevent *perf_pevent; -static struct pevent *pevent; -  bool latency_format; -int read_trace_init(int file_bigendian, int host_bigendian) +struct pevent *read_trace_init(int file_bigendian, int host_bigendian)  { -	if (pevent) -		return 0; - -	perf_pevent = pevent_alloc(); -	pevent = perf_pevent; +	struct pevent *pevent = pevent_alloc(); -	pevent_set_flag(pevent, PEVENT_NSEC_OUTPUT); -	pevent_set_file_bigendian(pevent, file_bigendian); -	pevent_set_host_bigendian(pevent, host_bigendian); +	if (pevent != NULL) { +		pevent_set_flag(pevent, PEVENT_NSEC_OUTPUT); +		pevent_set_file_bigendian(pevent, file_bigendian); +		pevent_set_host_bigendian(pevent, host_bigendian); +	} -	return 0; +	return pevent;  }  static int get_common_field(struct scripting_context *context,  			    int *offset, int *size, const char *type)  { +	struct pevent *pevent = context->pevent;  	struct event_format *event;  	struct format_field *field; @@ -150,7 +146,7 @@ void *raw_field_ptr(struct event_format *event, const char *name, void *data)  	return data + field->offset;  } -int trace_parse_common_type(void *data) +int trace_parse_common_type(struct pevent *pevent, void *data)  {  	struct pevent_record record; @@ -158,7 +154,7 @@ int trace_parse_common_type(void *data)  	return pevent_data_type(pevent, &record);  } -int trace_parse_common_pid(void *data) +int trace_parse_common_pid(struct pevent *pevent, void *data)  {  	struct pevent_record record; @@ -166,27 +162,21 @@ int trace_parse_common_pid(void *data)  	return pevent_data_pid(pevent, &record);  } -unsigned long long read_size(void *ptr, int size) +unsigned long long read_size(struct pevent *pevent, void *ptr, int size)  {  	return pevent_read_number(pevent, ptr, size);  } -struct event_format *trace_find_event(int type) -{ -	return pevent_find_event(pevent, type); -} - - -void print_trace_event(int cpu, void *data, int size) +void print_trace_event(struct pevent *pevent, int cpu, void *data, int size)  {  	struct event_format *event;  	struct pevent_record record;  	struct trace_seq s;  	int type; -	type = trace_parse_common_type(data); +	type = trace_parse_common_type(pevent, data); -	event = trace_find_event(type); +	event = pevent_find_event(pevent, type);  	if (!event) {  		warning("ug! no event found for type %d", type);  		return; @@ -198,13 +188,12 @@ void print_trace_event(int cpu, void *data, int size)  	record.data = data;  	trace_seq_init(&s); -	pevent_print_event(pevent, &s, &record); +	pevent_event_info(&s, event, &record);  	trace_seq_do_printf(&s); -	printf("\n");  } -void print_event(int cpu, void *data, int size, unsigned long long nsecs, -		  char *comm) +void print_event(struct pevent *pevent, int cpu, void *data, int size, +		 unsigned long long nsecs, char *comm)  {  	struct pevent_record record;  	struct trace_seq s; @@ -227,7 +216,8 @@ void print_event(int cpu, void *data, int size, unsigned long long nsecs,  	printf("\n");  } -void parse_proc_kallsyms(char *file, unsigned int size __unused) +void parse_proc_kallsyms(struct pevent *pevent, +			 char *file, unsigned int size __unused)  {  	unsigned long long addr;  	char *func; @@ -258,7 +248,8 @@ void parse_proc_kallsyms(char *file, unsigned int size __unused)  	}  } -void parse_ftrace_printk(char *file, unsigned int size __unused) +void parse_ftrace_printk(struct pevent *pevent, +			 char *file, unsigned int size __unused)  {  	unsigned long long addr;  	char *printk; @@ -282,17 +273,19 @@ void parse_ftrace_printk(char *file, unsigned int size __unused)  	}  } -int parse_ftrace_file(char *buf, unsigned long size) +int parse_ftrace_file(struct pevent *pevent, char *buf, unsigned long size)  {  	return pevent_parse_event(pevent, buf, size, "ftrace");  } -int parse_event_file(char *buf, unsigned long size, char *sys) +int parse_event_file(struct pevent *pevent, +		     char *buf, unsigned long size, char *sys)  {  	return pevent_parse_event(pevent, buf, size, sys);  } -struct event_format *trace_find_next_event(struct event_format *event) +struct event_format *trace_find_next_event(struct pevent *pevent, +					   struct event_format *event)  {  	static int idx;  | 
