aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2013-09-23 16:33:19 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2013-10-01 01:45:22 -0400
commit814e9b57c0cb56ef1f56c3099f130a3e5373564e (patch)
tree75363f17139842e4944643ac74b2a3bea594e295
parente2d05a8b1e4a7f6feae89a59543b1edbece1bda3 (diff)
drm/i915: Move the conditional seqno query into the tracepoint
We only wish to know the value of seqno when emitting the tracepoint, so move the query from a parameter to the macro to inside the conditional macro body so that the query is only evaluated when required. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r--drivers/gpu/drm/i915/i915_irq.c2
-rw-r--r--drivers/gpu/drm/i915/i915_trace.h21
2 files changed, 19 insertions, 4 deletions
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index b356dc15adda..84b7efc6ee91 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -807,7 +807,7 @@ static void notify_ring(struct drm_device *dev,
807 if (ring->obj == NULL) 807 if (ring->obj == NULL)
808 return; 808 return;
809 809
810 trace_i915_gem_request_complete(ring, ring->get_seqno(ring, false)); 810 trace_i915_gem_request_complete(ring);
811 811
812 wake_up_all(&ring->irq_queue); 812 wake_up_all(&ring->irq_queue);
813 i915_queue_hangcheck(dev); 813 i915_queue_hangcheck(dev);
diff --git a/drivers/gpu/drm/i915/i915_trace.h b/drivers/gpu/drm/i915/i915_trace.h
index 403309bf0452..daa6fdf4d8ba 100644
--- a/drivers/gpu/drm/i915/i915_trace.h
+++ b/drivers/gpu/drm/i915/i915_trace.h
@@ -319,9 +319,24 @@ DEFINE_EVENT(i915_gem_request, i915_gem_request_add,
319 TP_ARGS(ring, seqno) 319 TP_ARGS(ring, seqno)
320); 320);
321 321
322DEFINE_EVENT(i915_gem_request, i915_gem_request_complete, 322TRACE_EVENT(i915_gem_request_complete,
323 TP_PROTO(struct intel_ring_buffer *ring, u32 seqno), 323 TP_PROTO(struct intel_ring_buffer *ring),
324 TP_ARGS(ring, seqno) 324 TP_ARGS(ring),
325
326 TP_STRUCT__entry(
327 __field(u32, dev)
328 __field(u32, ring)
329 __field(u32, seqno)
330 ),
331
332 TP_fast_assign(
333 __entry->dev = ring->dev->primary->index;
334 __entry->ring = ring->id;
335 __entry->seqno = ring->get_seqno(ring, false);
336 ),
337
338 TP_printk("dev=%u, ring=%u, seqno=%u",
339 __entry->dev, __entry->ring, __entry->seqno)
325); 340);
326 341
327DEFINE_EVENT(i915_gem_request, i915_gem_request_retire, 342DEFINE_EVENT(i915_gem_request, i915_gem_request_retire,