diff options
| -rw-r--r-- | parse-events.c | 36 | ||||
| -rw-r--r-- | parse-events.h | 8 |
2 files changed, 42 insertions, 2 deletions
diff --git a/parse-events.c b/parse-events.c index 4ae337c..c831180 100644 --- a/parse-events.c +++ b/parse-events.c | |||
| @@ -2845,7 +2845,7 @@ static void pretty_print(struct trace_seq *s, void *data, int size, struct event | |||
| 2845 | } | 2845 | } |
| 2846 | } | 2846 | } |
| 2847 | 2847 | ||
| 2848 | static void print_lat_fmt(struct trace_seq *s, void *data, int size __unused) | 2848 | void pevent_data_lat_fmt(struct trace_seq *s, void *data, int size __unused) |
| 2849 | { | 2849 | { |
| 2850 | unsigned int lat_flags; | 2850 | unsigned int lat_flags; |
| 2851 | unsigned int pc; | 2851 | unsigned int pc; |
| @@ -2880,6 +2880,38 @@ static void print_lat_fmt(struct trace_seq *s, void *data, int size __unused) | |||
| 2880 | trace_seq_printf(s, "%d", lock_depth); | 2880 | trace_seq_printf(s, "%d", lock_depth); |
| 2881 | } | 2881 | } |
| 2882 | 2882 | ||
| 2883 | int pevent_data_type(void *data) | ||
| 2884 | { | ||
| 2885 | return trace_parse_common_type(data); | ||
| 2886 | } | ||
| 2887 | |||
| 2888 | struct event *pevent_data_event_from_type(int type) | ||
| 2889 | { | ||
| 2890 | return pevent_find_event(type); | ||
| 2891 | } | ||
| 2892 | |||
| 2893 | int pevent_data_pid(void *data) | ||
| 2894 | { | ||
| 2895 | return parse_common_pid(data); | ||
| 2896 | } | ||
| 2897 | |||
| 2898 | const char *pevent_data_comm_from_pid(int pid) | ||
| 2899 | { | ||
| 2900 | const char *comm; | ||
| 2901 | |||
| 2902 | comm = find_cmdline(pid); | ||
| 2903 | return comm; | ||
| 2904 | } | ||
| 2905 | |||
| 2906 | void pevent_event_info(struct trace_seq *s, struct event *event, | ||
| 2907 | int cpu, void *data, int size, unsigned long long nsecs) | ||
| 2908 | { | ||
| 2909 | if (event->handler) | ||
| 2910 | event->handler(s, data, size, event, cpu, nsecs); | ||
| 2911 | else | ||
| 2912 | pretty_print(s, data, size, event); | ||
| 2913 | } | ||
| 2914 | |||
| 2883 | void pevent_print_event(struct trace_seq *s, | 2915 | void pevent_print_event(struct trace_seq *s, |
| 2884 | int cpu, void *data, int size, unsigned long long nsecs) | 2916 | int cpu, void *data, int size, unsigned long long nsecs) |
| 2885 | { | 2917 | { |
| @@ -2908,7 +2940,7 @@ void pevent_print_event(struct trace_seq *s, | |||
| 2908 | if (latency_format) { | 2940 | if (latency_format) { |
| 2909 | trace_seq_printf(s, "%8.8s-%-5d %3d", | 2941 | trace_seq_printf(s, "%8.8s-%-5d %3d", |
| 2910 | comm, pid, cpu); | 2942 | comm, pid, cpu); |
| 2911 | print_lat_fmt(s, data, size); | 2943 | pevent_data_lat_fmt(s, data, size); |
| 2912 | } else | 2944 | } else |
| 2913 | trace_seq_printf(s, "%16s-%-5d [%03d]", comm, pid, cpu); | 2945 | trace_seq_printf(s, "%16s-%-5d [%03d]", comm, pid, cpu); |
| 2914 | 2946 | ||
diff --git a/parse-events.h b/parse-events.h index 5e9fe63..ea6fe20 100644 --- a/parse-events.h +++ b/parse-events.h | |||
| @@ -306,6 +306,14 @@ struct event *pevent_find_event(int id); | |||
| 306 | struct event * | 306 | struct event * |
| 307 | pevent_find_event_by_name(const char *sys, const char *name); | 307 | pevent_find_event_by_name(const char *sys, const char *name); |
| 308 | 308 | ||
| 309 | void pevent_data_lat_fmt(struct trace_seq *s, void *data, int size __unused); | ||
| 310 | int pevent_data_type(void *data); | ||
| 311 | struct event *pevent_data_event_from_type(int type); | ||
| 312 | int pevent_data_pid(void *data); | ||
| 313 | const char *pevent_data_comm_from_pid(int pid); | ||
| 314 | void pevent_event_info(struct trace_seq *s, struct event *event, | ||
| 315 | int cpu, void *data, int size, unsigned long long nsecs); | ||
| 316 | |||
| 309 | 317 | ||
| 310 | /* for debugging */ | 318 | /* for debugging */ |
| 311 | void pevent_print_funcs(void); | 319 | void pevent_print_funcs(void); |
