Skip to content

Commit

Permalink
drm/i915: Poll for seqno completion if IRQ is disabled
Browse files Browse the repository at this point in the history
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=32288
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
  • Loading branch information
Chris Wilson committed Dec 14, 2010
1 parent 9097eef commit b5ba177
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions drivers/gpu/drm/i915/i915_gem.c
Original file line number Diff line number Diff line change
Expand Up @@ -2000,7 +2000,6 @@ i915_do_wait_request(struct drm_device *dev, uint32_t seqno,
trace_i915_gem_request_wait_begin(dev, seqno);

ring->waiting_seqno = seqno;
ret = -ENODEV;
if (ring->irq_get(ring)) {
if (interruptible)
ret = wait_event_interruptible(ring->irq_queue,
Expand All @@ -2012,7 +2011,10 @@ i915_do_wait_request(struct drm_device *dev, uint32_t seqno,
|| atomic_read(&dev_priv->mm.wedged));

ring->irq_put(ring);
}
} else if (wait_for(i915_seqno_passed(ring->get_seqno(ring),
seqno) ||
atomic_read(&dev_priv->mm.wedged), 3000))
ret = -EBUSY;
ring->waiting_seqno = 0;

trace_i915_gem_request_wait_end(dev, seqno);
Expand Down

0 comments on commit b5ba177

Please sign in to comment.