diff --git a/drivers/gpu/drm/i915/i915_gem_request.c b/drivers/gpu/drm/i915/i915_gem_request.c index f33cfc19550c9925fb78bae2f15fc1f86c578599..a40b825763a3e9232edc28de478f610cec1e9e7e 100644 --- a/drivers/gpu/drm/i915/i915_gem_request.c +++ b/drivers/gpu/drm/i915/i915_gem_request.c @@ -1077,6 +1077,7 @@ long i915_wait_request(struct drm_i915_gem_request *req, { const int state = flags & I915_WAIT_INTERRUPTIBLE ? TASK_INTERRUPTIBLE : TASK_UNINTERRUPTIBLE; + wait_queue_head_t *errq = &req->i915->gpu_error.wait_queue; DEFINE_WAIT(reset); struct intel_wait wait; @@ -1112,7 +1113,7 @@ long i915_wait_request(struct drm_i915_gem_request *req, set_current_state(state); if (flags & I915_WAIT_LOCKED) - add_wait_queue(&req->i915->gpu_error.wait_queue, &reset); + add_wait_queue(errq, &reset); intel_wait_init(&wait, req->global_seqno); if (intel_engine_add_wait(req->engine, &wait)) @@ -1163,8 +1164,7 @@ long i915_wait_request(struct drm_i915_gem_request *req, i915_reset_in_progress(&req->i915->gpu_error)) { __set_current_state(TASK_RUNNING); i915_reset(req->i915); - reset_wait_queue(&req->i915->gpu_error.wait_queue, - &reset); + reset_wait_queue(errq, &reset); continue; } @@ -1175,7 +1175,7 @@ long i915_wait_request(struct drm_i915_gem_request *req, intel_engine_remove_wait(req->engine, &wait); if (flags & I915_WAIT_LOCKED) - remove_wait_queue(&req->i915->gpu_error.wait_queue, &reset); + remove_wait_queue(errq, &reset); __set_current_state(TASK_RUNNING); complete: