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/vc4: Use devm_request_irq() for automatic cleanup Date: Tue, 31 Mar 2026 17:02:00 +1000 Message-ID: In-Reply-To: <20260330-vc4-misc-fixes-v1-5-92defc940a29@igalia.com> References: <20260330-vc4-misc-fixes-v1-0-92defc940a29@igalia.com> <20260330-vc4-misc-fixes-v1-5-92defc940a29@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 **Verdict: Good cleanup, one behavioral note.** The patch switches from `request_irq()`/`free_irq()` to `devm_request_irq()` and inlines the single-caller `vc4_irq_prepare()`. **Behavioral change with `!vc4->v3d` check:** The old `vc4_irq_prepare()` would silently return if `!vc4->v3d`. The new code returns `-ENODEV` in that case. This is fine because the caller `vc4_v3d_bind()` only calls `vc4_irq_install()` after successfully setting up `vc4->v3d`, so this path should not be reached in normal operation. The explicit error return is actually better for catching programming errors. **IRQ name change:** The patch changes the IRQ name from `dev->driver->name` to `dev_name(dev->dev)`. This is a cosmetic difference visible in `/proc/interrupts` but is the idiomatic approach when using devm APIs. **Removal of `free_irq()` in `vc4_irq_uninstall()`:** Correct since `devm_request_irq()` handles cleanup automatically. The `vc4_irq_disable()` call remains to ensure interrupts are masked before teardown. **Removed `#include `:** This was only needed for `dev->driver->name` which is no longer used. Fine. No blocking issues. --- --- Generated by Claude Code Patch Reviewer