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/imagination: Fix deadlock in soft reset sequence Date: Tue, 10 Mar 2026 12:12:14 +1000 Message-ID: In-Reply-To: <20260309-fix-soft-reset-v1-1-121113be554f@imgtec.com> References: <20260309-fix-soft-reset-v1-1-121113be554f@imgtec.com> X-Mailer: Claude Code Patch Reviewer Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Overall Series Review Subject: drm/imagination: Fix deadlock in soft reset sequence Author: Alessio Belle Patches: 1 Reviewed: 2026-03-10T12:12:14.321041 --- This is a single-patch fix for a real deadlock in the PowerVR (Imagination)= DRM driver. The analysis is sound: `pvr_power_reset(pvr_dev, false)` (soft= reset) is called from `process_fwccb_command()` =E2=86=92 `pvr_fwccb_proce= ss()` =E2=86=92 `pvr_device_irq_thread_handler()`, which is the threaded IR= Q handler. Calling `disable_irq()` from within that handler will deadlock b= ecause `disable_irq()` waits (via `synchronize_irq()`) for any running thre= aded handler to complete =E2=80=94 i.e., it waits for itself. The fix is correct and minimal: use `disable_irq_nosync()` for the soft res= et path, which disables the IRQ without waiting for the current handler to = finish. This is safe because we are *already inside* the only handler that = could be running. The patch is well-tagged with `Fixes:` and `Cc: stable`, appropriate for a = deadlock fix. **Verdict: This patch looks good and is ready to merge.** --- Generated by Claude Code Patch Reviewer