drm/i915: Refine tracepoints
A lot of minor tweaks to fix the tracepoints, improve the outputting for ftrace, and to generally make the tracepoints useful again. It is a start and enough to begin identifying performance issues and gaps in our coverage. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
@ -62,18 +62,9 @@ render_ring_flush(struct intel_ring_buffer *ring,
|
||||
u32 flush_domains)
|
||||
{
|
||||
struct drm_device *dev = ring->dev;
|
||||
drm_i915_private_t *dev_priv = dev->dev_private;
|
||||
u32 cmd;
|
||||
int ret;
|
||||
|
||||
#if WATCH_EXEC
|
||||
DRM_INFO("%s: invalidate %08x flush %08x\n", __func__,
|
||||
invalidate_domains, flush_domains);
|
||||
#endif
|
||||
|
||||
trace_i915_gem_request_flush(dev, dev_priv->next_seqno,
|
||||
invalidate_domains, flush_domains);
|
||||
|
||||
if ((invalidate_domains | flush_domains) & I915_GEM_GPU_DOMAINS) {
|
||||
/*
|
||||
* read/write caches:
|
||||
@ -122,9 +113,6 @@ render_ring_flush(struct intel_ring_buffer *ring,
|
||||
(IS_G4X(dev) || IS_GEN5(dev)))
|
||||
cmd |= MI_INVALIDATE_ISP;
|
||||
|
||||
#if WATCH_EXEC
|
||||
DRM_INFO("%s: queue flush %08x to ring\n", __func__, cmd);
|
||||
#endif
|
||||
ret = intel_ring_begin(ring, 2);
|
||||
if (ret)
|
||||
return ret;
|
||||
@ -714,11 +702,8 @@ render_ring_dispatch_execbuffer(struct intel_ring_buffer *ring,
|
||||
u32 offset, u32 len)
|
||||
{
|
||||
struct drm_device *dev = ring->dev;
|
||||
drm_i915_private_t *dev_priv = dev->dev_private;
|
||||
int ret;
|
||||
|
||||
trace_i915_gem_request_submit(dev, dev_priv->next_seqno + 1);
|
||||
|
||||
if (IS_I830(dev) || IS_845G(dev)) {
|
||||
ret = intel_ring_begin(ring, 4);
|
||||
if (ret)
|
||||
@ -953,13 +938,13 @@ int intel_wait_ring_buffer(struct intel_ring_buffer *ring, int n)
|
||||
return 0;
|
||||
}
|
||||
|
||||
trace_i915_ring_wait_begin (dev);
|
||||
trace_i915_ring_wait_begin(ring);
|
||||
end = jiffies + 3 * HZ;
|
||||
do {
|
||||
ring->head = I915_READ_HEAD(ring);
|
||||
ring->space = ring_space(ring);
|
||||
if (ring->space >= n) {
|
||||
trace_i915_ring_wait_end(dev);
|
||||
trace_i915_ring_wait_end(ring);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -973,7 +958,7 @@ int intel_wait_ring_buffer(struct intel_ring_buffer *ring, int n)
|
||||
if (atomic_read(&dev_priv->mm.wedged))
|
||||
return -EAGAIN;
|
||||
} while (!time_after(jiffies, end));
|
||||
trace_i915_ring_wait_end (dev);
|
||||
trace_i915_ring_wait_end(ring);
|
||||
return -EBUSY;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user