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/ast: Add timeouts to AHB/SCU polling loops to prevent soft lockups Date: Sat, 16 May 2026 12:09:52 +1000 Message-ID: In-Reply-To: <20260513113949.356537-1-w15303746062@163.com> References: <20260513113949.356537-1-w15303746062@163.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/ast: Add timeouts to AHB/SCU polling loops to prevent soft loc= kups Author: Patches: 1 Reviewed: 2026-05-16T12:09:52.113846 --- **NAK =E2=80=94 Patch is against a stale tree and the underlying code has b= een refactored away.** This single patch targets two files (`ast_post.c` and `ast_2500.c`) to add = timeouts to polling loops in `__ast_mindwm`, `__ast_moutdwm`, and `ast_2500= _patch_ahb`. However, the code has been substantially refactored in the cur= rent drm-next tree: 1. **`__ast_mindwm` and `__ast_moutdwm` no longer contain polling loops.** = They were moved from `ast_post.c` to `ast_drv.c` and rewritten to use `__as= t_selseg` / `__ast_rdseg32` / `__ast_wrseg32` helpers. The old segment-sele= ction polling loop (`do { data =3D __ast_read32(...) & 0xffff0000; } while = (data !=3D ...)`) now lives in `__ast_selseg()` at `ast_drv.c:63-67`. 2. **`ast_2500_patch_ahb` was also refactored** =E2=80=94 it now uses symbo= lic register names (`AST_REG_SCU000`, `AST_REG_SCU000_PROTECTION_KEY`, etc.= ) instead of raw hex addresses (`0x1e6e2000`, `0x1688A8A8`). The patch's co= ntext lines reference the old raw-hex code and won't apply. 3. **There is also `ast_moutdwm_poll`** at `ast_drv.c:105-115` which has ye= t another unbounded polling loop using `cpu_relax()` =E2=80=94 the patch do= esn't address this one. The underlying concern (unbounded polling loops that can cause soft lockups= ) remains valid, but a new patch would need to target the current code stru= cture, addressing loops in: - `__ast_selseg()` (`ast_drv.c:63-67`) - `ast_moutdwm_poll()` (`ast_drv.c:112-114`) - `ast_2500_patch_ahb()` (`ast_2500.c:136-139`) --- --- Generated by Claude Code Patch Reviewer