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/v3d: Use raw seqcount helpers instead of fighting with lockdep Date: Mon, 09 Mar 2026 08:56:08 +1000 Message-ID: In-Reply-To: <20260306-v3d-reset-locking-improv-v3-2-49864fe00692@igalia.com> References: <20260306-v3d-reset-locking-improv-v3-0-49864fe00692@igalia.com> <20260306-v3d-reset-locking-improv-v3-2-49864fe00692@igalia.com> X-Mailer: Claude Code Patch Reviewer Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit MIME-Version: 1.0 Patch Review Good cleanup that removes the ugly `IS_ENABLED(CONFIG_LOCKDEP)` conditional IRQ disabling. The rationale for using raw seqcount helpers is well-explained: jobs are serialized per-queue so writers can't race on the same seqcount. **Bug: Mismatched raw/non-raw read-side helper.** The write side is switched to `raw_write_seqcount_begin/end` and the read begin is switched to `raw_read_seqcount_begin`, but `v3d_get_stats()` at `v3d_drv.c:197` still uses the non-raw `read_seqcount_retry()`: ```c do { seq = raw_read_seqcount_begin(&stats->lock); ... } while (read_seqcount_retry(&stats->lock, seq)); ``` This should be `raw_read_seqcount_retry()` to match. While `read_seqcount_retry` will functionally work (it just adds a lockdep check that won't fire since the reader context itself is fine), it's inconsistent and the lockdep annotation on the retry side could theoretically trigger if lockdep's view of the seqcount changes in future kernels. For correctness and consistency, both read helpers should be raw. --- Generated by Claude Code Patch Reviewer