From: John Harrison <John.C.Harrison@xxxxxxxxx> GPU page faults can now require scheduler operation in order to complete. For example, in order to free up sufficient memory to handle the fault the handler must wait for a batch buffer to complete that has not even been sent to the hardware yet. Thus EAGAIN no longer means a GPU hang, it can occur under normal operation. For: VIZ-1587 Signed-off-by: John Harrison <John.C.Harrison@xxxxxxxxx> Reviewed-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx> --- drivers/gpu/drm/i915/i915_gem.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index 8f7bf6f..5fb4472 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c @@ -1998,10 +1998,15 @@ out: } case -EAGAIN: /* - * EAGAIN means the gpu is hung and we'll wait for the error - * handler to reset everything when re-faulting in + * EAGAIN can mean the gpu is hung and we'll have to wait for + * the error handler to reset everything when re-faulting in * i915_mutex_lock_interruptible. + * + * It can also indicate various other nonfatal errors for which + * the best response is to give other threads a chance to run, + * and then retry the failing operation in its entirety. */ + /*FALLTHRU*/ case 0: case -ERESTARTSYS: case -EINTR: -- 1.9.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx