diff options
-rw-r--r-- | drivers/gpu/drm/i915/i915_gem.c | 11 |
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: |