From mboxrd@z Thu Jan 1 00:00:00 1970 From: Claude Code Review Bot To: dri-devel-reviews@example.com Subject: Claude review: drm/i915/dp: On AUX_CH tx timeout, wake up the sink Date: Tue, 10 Mar 2026 12:41:16 +1000 Message-ID: In-Reply-To: <20260309-dp_aux_timeout-v1-2-08c610a63a84@intel.com> References: <20260309-dp_aux_timeout-v1-0-08c610a63a84@intel.com> <20260309-dp_aux_timeout-v1-2-08c610a63a84@intel.com> X-Mailer: Claude Code Patch Reviewer Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Patch Review **Recursive AUX concern:** ```c if (status & DP_AUX_CH_CTL_TIME_OUT_ERROR) { drm_dp_wake_sink(&intel_dp->aux); continue; } ``` `drm_dp_wake_sink()` internally calls `drm_dp_dpcd_readb()` and `drm_dp_dpc= d_writeb()`, which will call back into `intel_dp_aux_xfer()`. This is calle= d inside the retry loop (up to 5 tries =C3=97 number of clock dividers). Ea= ch invocation of `drm_dp_wake_sink` can itself do up to 6 retries with 1ms = sleeps plus additional DPCD writes. This creates **nested AUX transactions = within AUX transactions**, which could lead to lock recursion issues (the A= UX mutex), or at minimum add very long delays (potentially tens of millisec= onds per retry iteration). The comment references "Spec DP2.1 Section 2.11.7.1.5.8" but the cover lett= er references "Section 2.3.4" =E2=80=94 these should be consistent and corr= ect. **Performance:** On a disconnected sink (the common timeout case per the ex= isting comment at line 410), this will add significant delay to every AUX p= robe by attempting to wake a non-existent device on every timeout retry. --- --- Generated by Claude Code Patch Reviewer