summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/drm_trace.h
diff options
context:
space:
mode:
authorJesse Barnes <jbarnes@virtuousgeek.org>2010-07-01 16:48:09 -0700
committerDave Airlie <airlied@redhat.com>2010-07-02 14:03:24 +1000
commitb9c2c9ae882f058084e13e339925dbf8d2d20271 (patch)
tree2c3baccc55ef03477a4fc3e08473ea35931e56ec /drivers/gpu/drm/drm_trace.h
parentac2874b980e05ed7a4ea8fed7b0a92428b51ce58 (diff)
downloadlwn-b9c2c9ae882f058084e13e339925dbf8d2d20271.tar.gz
lwn-b9c2c9ae882f058084e13e339925dbf8d2d20271.zip
drm: add per-event vblank event trace points
Allows us to track each process that requests and completes events. Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/drm_trace.h')
-rw-r--r--drivers/gpu/drm/drm_trace.h57
1 files changed, 43 insertions, 14 deletions
diff --git a/drivers/gpu/drm/drm_trace.h b/drivers/gpu/drm/drm_trace.h
index 8a92683f14ec..03ea964aa604 100644
--- a/drivers/gpu/drm/drm_trace.h
+++ b/drivers/gpu/drm/drm_trace.h
@@ -11,22 +11,51 @@
#define TRACE_INCLUDE_FILE drm_trace
TRACE_EVENT(drm_vblank_event,
+ TP_PROTO(int crtc, unsigned int seq),
+ TP_ARGS(crtc, seq),
+ TP_STRUCT__entry(
+ __field(int, crtc)
+ __field(unsigned int, seq)
+ ),
+ TP_fast_assign(
+ __entry->crtc = crtc;
+ __entry->seq = seq;
+ ),
+ TP_printk("crtc=%d, seq=%d", __entry->crtc, __entry->seq)
+);
- TP_PROTO(int crtc, unsigned int seq),
-
- TP_ARGS(crtc, seq),
-
- TP_STRUCT__entry(
- __field(int, crtc)
- __field(unsigned int, seq)
- ),
-
- TP_fast_assign(
- __entry->crtc = crtc;
- __entry->seq = seq;
- ),
+TRACE_EVENT(drm_vblank_event_queued,
+ TP_PROTO(pid_t pid, int crtc, unsigned int seq),
+ TP_ARGS(pid, crtc, seq),
+ TP_STRUCT__entry(
+ __field(pid_t, pid)
+ __field(int, crtc)
+ __field(unsigned int, seq)
+ ),
+ TP_fast_assign(
+ __entry->pid = pid;
+ __entry->crtc = crtc;
+ __entry->seq = seq;
+ ),
+ TP_printk("pid=%d, crtc=%d, seq=%d", __entry->pid, __entry->crtc, \
+ __entry->seq)
+);
- TP_printk("crtc=%d, seq=%d", __entry->crtc, __entry->seq)
+TRACE_EVENT(drm_vblank_event_delivered,
+ TP_PROTO(pid_t pid, int crtc, unsigned int seq),
+ TP_ARGS(pid, crtc, seq),
+ TP_STRUCT__entry(
+ __field(pid_t, pid)
+ __field(int, crtc)
+ __field(unsigned int, seq)
+ ),
+ TP_fast_assign(
+ __entry->pid = pid;
+ __entry->crtc = crtc;
+ __entry->seq = seq;
+ ),
+ TP_printk("pid=%d, crtc=%d, seq=%d", __entry->pid, __entry->crtc, \
+ __entry->seq)
);
#endif /* _DRM_TRACE_H_ */