diff options
| author | Alan Kwong <akwong@codeaurora.org> | 2016-10-28 08:59:48 -0400 |
|---|---|---|
| committer | Alan Kwong <akwong@codeaurora.org> | 2016-11-11 16:07:17 -0500 |
| commit | 9151c700369028bf1560a8dbf3825bf448a934f7 (patch) | |
| tree | 865fcea018c88f52c7fdb939e1f8a398c58292d8 | |
| parent | df86a7b92a14daf9d73e9ad2e4bfeac2ca329bdc (diff) | |
drm/msm/sde: add systrace compatible trace macro
Add systrace compatible trace macro to log begin/end
and counter events. This is useful for correlating
user mode and kernel events.
Change-Id: I6c5108fb8ddacc36b51ba2541d32541dd28856e2
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| -rw-r--r-- | drivers/gpu/drm/msm/sde/sde_trace.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/drivers/gpu/drm/msm/sde/sde_trace.h b/drivers/gpu/drm/msm/sde/sde_trace.h index 950145cb69bb..5054af5ab10f 100644 --- a/drivers/gpu/drm/msm/sde/sde_trace.h +++ b/drivers/gpu/drm/msm/sde/sde_trace.h @@ -92,6 +92,48 @@ TRACE_EVENT(sde_perf_set_ot, __entry->vbif_idx) ) + +TRACE_EVENT(sde_mark_write, + TP_PROTO(int pid, const char *name, bool trace_begin), + TP_ARGS(pid, name, trace_begin), + TP_STRUCT__entry( + __field(int, pid) + __string(trace_name, name) + __field(bool, trace_begin) + ), + TP_fast_assign( + __entry->pid = pid; + __assign_str(trace_name, name); + __entry->trace_begin = trace_begin; + ), + TP_printk("%s|%d|%s", __entry->trace_begin ? "B" : "E", + __entry->pid, __get_str(trace_name)) +) + +TRACE_EVENT(sde_trace_counter, + TP_PROTO(int pid, char *name, int value), + TP_ARGS(pid, name, value), + TP_STRUCT__entry( + __field(int, pid) + __string(counter_name, name) + __field(int, value) + ), + TP_fast_assign( + __entry->pid = current->tgid; + __assign_str(counter_name, name); + __entry->value = value; + ), + TP_printk("%d|%s|%d", __entry->pid, + __get_str(counter_name), __entry->value) +) + +#define SDE_ATRACE_END(name) trace_sde_mark_write(current->tgid, name, 0) +#define SDE_ATRACE_BEGIN(name) trace_sde_mark_write(current->tgid, name, 1) +#define SDE_ATRACE_FUNC() SDE_ATRACE_BEGIN(__func__) + +#define SDE_ATRACE_INT(name, value) \ + trace_sde_trace_counter(current->tgid, name, value) + #endif /* _SDE_TRACE_H_ */ /* This part must be outside protection */ |
