drm/i915/dp: Fix ww mutex lock failure in for_each_joiner_candidate() loop

Handle modeset WW mutex lock failures due to contention properly.
Return -EDEADLK to the caller instead of attempting to lock the same
mutex again in a subsequent joiner candidate iteration, where the WW
mutex is already in a contended state.

This fixes the following warning:

WARNING: drivers/gpu/drm/drm_modeset_lock.c:298 at modeset_lock+0x1c0/0x210

triggered by ctx->contended.

Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Fixes: 1f1e3e5c65 ("drm/i915/dp: Rework pipe joiner logic in compute_config")
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260218105708.845161-1-imre.deak@intel.com
This commit is contained in:
Imre Deak 2026-02-18 12:57:07 +02:00
parent 552399c435
commit c860076ea9

View File

@ -2969,7 +2969,7 @@ intel_dp_compute_link_config(struct intel_encoder *encoder,
ret = intel_dp_compute_link_for_joined_pipes(encoder, crtc_state, conn_state,
respect_downstream_limits);
if (ret == 0)
if (ret == 0 || ret == -EDEADLK)
break;
}