[Intel-gfx] [PATCH] drm/i915: Revert ea0000f0 "Roll out the helper nonblock tracking"

Jim Rees rees at umich.edu
Sun Nov 27 18:52:08 UTC 2016


Commit ea0000f0 has been causing multiple problems for i915 users. See for
example:

https://bugs.freedesktop.org/show_bug.cgi?id=96781
https://bugs.freedesktop.org/show_bug.cgi?id=97529
https://bugzilla.redhat.com/show_bug.cgi?id=1385228
https://forums.opensuse.org/showthread.php/520969-drm-915-Resetting-chip-after-gpu-hang

Those last two are not confirmed but look like the same problem.

This has only been lightly tested and probably shouldn't go upstream yet.

Signed-off-by: Jim Rees <rees at umich.edu>
---
 drivers/gpu/drm/i915/intel_display.c | 10 ----------
 1 file changed, 10 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 81c1149..c31c9e4 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -14346,8 +14346,6 @@ static void intel_atomic_commit_tail(struct drm_atomic_state *state)
 		WARN_ON(ret);
 	}
 
-	drm_atomic_helper_wait_for_dependencies(state);
-
 	if (intel_state->modeset) {
 		memcpy(dev_priv->min_pixclk, intel_state->min_pixclk,
 		       sizeof(intel_state->min_pixclk));
@@ -14470,8 +14468,6 @@ static void intel_atomic_commit_tail(struct drm_atomic_state *state)
 	if (intel_state->modeset && intel_can_enable_sagv(state))
 		intel_enable_sagv(dev_priv);
 
-	drm_atomic_helper_commit_hw_done(state);
-
 	if (intel_state->modeset)
 		intel_display_power_put(dev_priv, POWER_DOMAIN_MODESET);
 
@@ -14479,8 +14475,6 @@ static void intel_atomic_commit_tail(struct drm_atomic_state *state)
 	drm_atomic_helper_cleanup_planes(dev, state);
 	mutex_unlock(&dev->struct_mutex);
 
-	drm_atomic_helper_commit_cleanup_done(state);
-
 	drm_atomic_state_free(state);
 
 	/* As one of the primary mmio accessors, KMS has a high likelihood
@@ -14546,10 +14540,6 @@ static int intel_atomic_commit(struct drm_device *dev,
 		return -EINVAL;
 	}
 
-	ret = drm_atomic_helper_setup_commit(state, nonblock);
-	if (ret)
-		return ret;
-
 	INIT_WORK(&state->commit_work, intel_atomic_commit_work);
 
 	ret = intel_atomic_prepare_commit(dev, state, nonblock);
-- 
2.10.2



More information about the Intel-gfx mailing list