aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2013-09-12 11:57:28 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2013-09-12 16:40:36 -0400
commit571c608d06df2d50233263d233a32edab1842865 (patch)
tree19ed8cdca2a4cc72354d1d0ba49bfbd93667f030
parent0d971748d086f3bf2dcf4094dd92d17ee123f669 (diff)
drm/i915: kill set_need_resched
This is just a remnant from the old days when our reset handling was horribly racy, suffered from terribly locking issues and often happily live-locked. Those days are now gone so we can drop the hacks and just rip the reschedule-point out. Reported-by: Peter Zijlstra <peterz@infradead.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Peter Zijlstra <peterz@infradead.org> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r--drivers/gpu/drm/i915/i915_gem.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index d9e337feef14..f2a546ef6870 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -1390,14 +1390,11 @@ out:
1390 if (i915_terminally_wedged(&dev_priv->gpu_error)) 1390 if (i915_terminally_wedged(&dev_priv->gpu_error))
1391 return VM_FAULT_SIGBUS; 1391 return VM_FAULT_SIGBUS;
1392 case -EAGAIN: 1392 case -EAGAIN:
1393 /* Give the error handler a chance to run and move the 1393 /*
1394 * objects off the GPU active list. Next time we service the 1394 * EAGAIN means the gpu is hung and we'll wait for the error
1395 * fault, we should be able to transition the page into the 1395 * handler to reset everything when re-faulting in
1396 * GTT without touching the GPU (and so avoid further 1396 * i915_mutex_lock_interruptible.
1397 * EIO/EGAIN). If the GPU is wedged, then there is no issue
1398 * with coherency, just lost writes.
1399 */ 1397 */
1400 set_need_resched();
1401 case 0: 1398 case 0:
1402 case -ERESTARTSYS: 1399 case -ERESTARTSYS:
1403 case -EINTR: 1400 case -EINTR: