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/mipi-dsi: fix of_node reference leak in of_mipi_dsi_device_add error path Date: Mon, 25 May 2026 16:47:47 +1000 Message-ID: In-Reply-To: <20260525045028.3895931-1-vulab@iscas.ac.cn> References: <20260525045028.3895931-1-vulab@iscas.ac.cn> <20260525045028.3895931-1-vulab@iscas.ac.cn> X-Mailer: Claude Code Patch Reviewer Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Patch Review **Correctness: Good.** The bug analysis is accurate. `of_node_get(node)` at= line 182 takes a reference, and none of the failure paths inside `mipi_dsi= _device_register_full()` release it. The fix correctly calls `of_node_put(n= ode)` (not `of_node_put(info.node)` =E2=80=94 both point to the same node, = but using `node` directly is fine since `info.node` was set to `of_node_get= (node)`). **Minor style nit:** The new variable declaration breaks reverse-Christmas-= tree ordering: ```c struct mipi_dsi_device_info info =3D { }; int ret; struct mipi_dsi_device *dsi; u32 reg; ``` Per kernel coding conventions, local variable declarations should go longes= t-to-shortest line. The preferred ordering would be: ```c struct mipi_dsi_device_info info =3D { }; struct mipi_dsi_device *dsi; u32 reg; int ret; ``` This is a trivial style issue and shouldn't block the patch, but a v2 could= clean it up. **Commit message:** Well-written. The explanation of why `device_set_node()= ` doesn't take its own reference is helpful context. The `Fixes:` tag and `= Cc: stable` are appropriate. **One observation for the commit message:** The message says "when `mipi_ds= i_device_register_full()` fails (e.g., `mipi_dsi_device_add()` returns an e= rror)" =E2=80=94 it's worth noting that the early validation checks in `mip= i_dsi_device_register_full()` (invalid channel, NULL info) also leak the re= ference, not just the `mipi_dsi_device_add()` sub-failure. The fix handles = all of these, which is correct. **Recommendation:** Acked with the suggestion to fix the declaration orderi= ng in a v2 if the maintainer prefers it. --- Generated by Claude Code Patch Reviewer