|
@@ -2652,6 +2652,9 @@ int i915_gem_reset_prepare(struct drm_i915_private *dev_priv)
|
|
tasklet_disable(&engine->irq_tasklet);
|
|
tasklet_disable(&engine->irq_tasklet);
|
|
tasklet_kill(&engine->irq_tasklet);
|
|
tasklet_kill(&engine->irq_tasklet);
|
|
|
|
|
|
|
|
+ if (engine->irq_seqno_barrier)
|
|
|
|
+ engine->irq_seqno_barrier(engine);
|
|
|
|
+
|
|
if (engine_stalled(engine)) {
|
|
if (engine_stalled(engine)) {
|
|
request = i915_gem_find_active_request(engine);
|
|
request = i915_gem_find_active_request(engine);
|
|
if (request && request->fence.error == -EIO)
|
|
if (request && request->fence.error == -EIO)
|
|
@@ -2748,9 +2751,6 @@ static void i915_gem_reset_engine(struct intel_engine_cs *engine)
|
|
{
|
|
{
|
|
struct drm_i915_gem_request *request;
|
|
struct drm_i915_gem_request *request;
|
|
|
|
|
|
- if (engine->irq_seqno_barrier)
|
|
|
|
- engine->irq_seqno_barrier(engine);
|
|
|
|
-
|
|
|
|
request = i915_gem_find_active_request(engine);
|
|
request = i915_gem_find_active_request(engine);
|
|
if (request && i915_gem_reset_request(request)) {
|
|
if (request && i915_gem_reset_request(request)) {
|
|
DRM_DEBUG_DRIVER("resetting %s to restart from tail of request 0x%x\n",
|
|
DRM_DEBUG_DRIVER("resetting %s to restart from tail of request 0x%x\n",
|