[PATCH 2/7] WIP - fix call order in i915_driver_hw_remove()

Luca Coelho luciano.coelho at intel.com
Mon Sep 30 09:29:37 UTC 2024


Signed-off-by: Luca Coelho <luciano.coelho at intel.com>
---
 drivers/gpu/drm/i915/i915_driver.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_driver.c b/drivers/gpu/drm/i915/i915_driver.c
index 4caf11123d0c..eac9fae80344 100644
--- a/drivers/gpu/drm/i915/i915_driver.c
+++ b/drivers/gpu/drm/i915/i915_driver.c
@@ -582,17 +582,17 @@ static void i915_driver_hw_remove(struct drm_i915_private *dev_priv)
 	struct intel_display *display = &dev_priv->display;
 	struct pci_dev *pdev = to_pci_dev(dev_priv->drm.dev);
 
+	intel_opregion_cleanup(display);
+
+	if (pdev->msi_enabled)
+		pci_disable_msi(pdev);
+
 	intel_memory_regions_driver_release(dev_priv);
 	i915_ggtt_driver_release(dev_priv);
 	i915_gem_drain_freed_objects(dev_priv);
 	i915_ggtt_driver_late_release(dev_priv);
 
 	i915_perf_fini(dev_priv);
-
-	intel_opregion_cleanup(display);
-
-	if (pdev->msi_enabled)
-		pci_disable_msi(pdev);
 }
 
 /**
@@ -878,6 +878,8 @@ void i915_driver_remove(struct drm_i915_private *i915)
 
 	i915_driver_hw_remove(i915);
 
+	/* FIXME: Is i915_driver_mmio_release() needed here? */
+
 	intel_runtime_pm_put(&i915->runtime_pm, wakeref);
 }
 
-- 
2.45.2



More information about the Intel-gfx-trybot mailing list