[PATCH 0/6] drm/i915/reset: Solve display vs. GPU reset deadlock, again

Ville Syrjala
2026-04-08T23:35:07Z

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Apparently we lost proper display vs. GPU reset deadlock
handling. Try to bring it back, using a modern dma-fence
based approach.

Cc: Simona Vetter <simona.vetter@ffwll.ch>
Cc: Christian König <christian.koenig@amd.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>

Ville Syrjälä (6):
dma-buf: Remove old lies about dma_fence_wait_any_timeout() not
accepting some fences
drm/i915/reset: Reorganize display reset code
drm/i915/reset: Move pending_fb_pin handling to i915
drm/xe/display: Add init_clock_gating.h stubs
drm/i915/reset: Handle the display vs. GPU reset deadlock using a
custom dma-fence
drm/i915/display: Make fence timeout infinite

drivers/dma-buf/dma-fence.c | 5 +-
drivers/gpu/drm/i915/display/intel_display.c | 34 ++++--
.../gpu/drm/i915/display/intel_display_core.h | 7 +-
.../drm/i915/display/intel_display_driver.c | 5 +
.../drm/i915/display/intel_display_power.c | 2 -
.../drm/i915/display/intel_display_reset.c | 103 +++++++++++++++---
.../drm/i915/display/intel_display_reset.h | 8 +-
drivers/gpu/drm/i915/display/intel_overlay.c | 10 +-
drivers/gpu/drm/i915/gt/intel_reset.c | 26 +++--
drivers/gpu/drm/i915/i915_dpt.c | 5 +-
drivers/gpu/drm/i915/i915_drv.h | 2 +
drivers/gpu/drm/i915/i915_fb_pin.c | 9 +-
drivers/gpu/drm/i915/i915_overlay.c | 6 +
drivers/gpu/drm/xe/Makefile | 1 +
.../compat-i915-headers/intel_clock_gating.h | 10 +-
15 files changed, 168 insertions(+), 65 deletions(-)

--
2.52.0