diff --git a/drivers/gpu/drm/i915/gem/i915_gem_object.c b/drivers/gpu/drm/i915/gem/i915_gem_object.c index 34bbefa6d67f..c84443e01ef1 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_object.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_object.c @@ -1028,6 +1028,8 @@ int i915_window_blt_copy(struct drm_i915_gem_object *dst, spin_unlock(&i915->mm.window_queue.lock); + intel_engine_pm_get(ce->engine); + do { struct i915_request *rq; long timeout; @@ -1080,6 +1082,8 @@ int i915_window_blt_copy(struct drm_i915_gem_object *dst, flush_work(&ce->engine->retire_work); } while (remain); + intel_engine_pm_put(ce->engine); + spin_lock(&i915->mm.window_queue.lock); src_vma->size = BLT_WINDOW_SZ; dst_vma->size = BLT_WINDOW_SZ;