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/panthor: Make panthor_irq::state a non-atomic field Date: Sat, 16 May 2026 13:32:44 +1000 Message-ID: In-Reply-To: <20260512-panthor-signal-from-irq-v2-1-95c614a739cb@collabora.com> References: <20260512-panthor-signal-from-irq-v2-0-95c614a739cb@collabora.com> <20260512-panthor-signal-from-irq-v2-1-95c614a739cb@collabora.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 **R-b: Steven Price, Liviu Dudau** Clean conversion from `atomic_t` to a plain `enum panthor_irq_state`, justi= fied by the observation that `mask_lock` is already held in all paths. The = one path that wasn't (`_irq_suspend` prologue) now gets a `scoped_guard`. N= o issues. The `_irq_suspend` change correctly adds a second `scoped_guard` for the `S= USPENDED` state write after `synchronize_irq()`: ```c synchronize_irq(pirq->irq); scoped_guard(spinlock_irqsave, &pirq->mask_lock) pirq->state =3D PANTHOR_IRQ_STATE_SUSPENDED; ``` This is correct =E2=80=94 the `synchronize_irq()` must be called without th= e lock held since it waits for handler completion. No concerns. --- --- Generated by Claude Code Patch Reviewer