We're missing the cleanup workqueue flush on the shutdown path. Add it. Unfortunately have to briefly include intel_display_core.c here. To be removed later.
Link: https://lore.kernel.org/r/[email protected] Suggested-by: Ville Syrjälä <[email protected]> Signed-off-by: Jani Nikula <[email protected]> --- drivers/gpu/drm/i915/i915_driver.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/i915/i915_driver.c b/drivers/gpu/drm/i915/i915_driver.c index 93940cfe91a0..60d5e06675ab 100644 --- a/drivers/gpu/drm/i915/i915_driver.c +++ b/drivers/gpu/drm/i915/i915_driver.c @@ -54,6 +54,7 @@ #include "display/intel_bw.h" #include "display/intel_cdclk.h" #include "display/intel_crtc.h" +#include "display/intel_display_core.h" #include "display/intel_display_device.h" #include "display/intel_display_driver.h" #include "display/intel_display_power.h" @@ -1053,6 +1054,8 @@ void i915_driver_shutdown(struct drm_i915_private *i915) drm_atomic_helper_shutdown(&i915->drm); } + flush_workqueue(display->wq.cleanup); + intel_dp_mst_suspend(display); intel_encoder_block_all_hpds(display); -- 2.47.3
