Thread (72 messages) 72 messages, 6 authors, 27d ago

Re: [PATCH v14 04/38] phy: rockchip: usbdp: Fix devm_clk_bulk_get_all check

From: sashiko-bot@kernel.org
Date: 2026-08-14 01:41:46
Also in: linux-devicetree

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:

Pre-existing issues:
- [High] Missing NULL check on `udphy->clks[i].id` before passing to `strncmp`.
--
--- Patch [4]: [PATCH v14 04/38] phy: rockchip: usbdp: Fix devm_clk_bulk_get_all check ---
commit 744151abc279ab01b34daf0e77ee2a3dbe3ad834
Author: Sebastian Reichel [off-list ref]

phy: rockchip: usbdp: Fix devm_clk_bulk_get_all check

This commit changes the error handling for devm_clk_bulk_get_all() to
properly return its error code, such as -EPROBE_DEFER, rather than masking
it with -ENODEV. The change allows the driver to defer probing when
necessary. Missing clocks are now handled by the subsequent refclk search
check.

Closes: https://lore.kernel.org/linux-phy/20260612164107.C7DB21F000E9@smtp.kernel.org/ (local)
quoted hunk ↗ jump to hunk
diff --git a/drivers/phy/rockchip/phy-rockchip-usbdp.c b/drivers/phy/rockchip/phy-rockchip-usbdp.c
--- a/drivers/phy/rockchip/phy-rockchip-usbdp.c
+++ b/drivers/phy/rockchip/phy-rockchip-usbdp.c
@@ -427,8 +427,8 @@ static int rk_udphy_clk_init(struct rk_udphy *udphy, struct device *dev)
 	int i;
 
 	udphy->num_clks = devm_clk_bulk_get_all(dev, &udphy->clks);
-	if (udphy->num_clks < 1)
-		return -ENODEV;
+	if (udphy->num_clks < 0)
+		return udphy->num_clks;
 
 	/* used for configure phy reference clock frequency */
 	for (i = 0; i < udphy->num_clks; i++) {
 		if (!udphy->clks[i].id)
 			continue;
 
 		if (!strncmp(udphy->clks[i].id, "refclk", 6)) {
[Severity: High]
This is a pre-existing issue, but can this lead to a NULL pointer
dereference in rk_udphy_clk_init()?

If a device tree defines the clocks property but omits the clock-names
property, devm_clk_bulk_get_all() returns a positive clock count but
initializes clks[i].id to NULL.

Does this loop unconditionally pass that NULL pointer to strncmp(),
resulting in a kernel panic during probe?

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260813-rockchip-usbdp-cleanup-v14-0-b5ad9c68fa11@collabora.com?part=4

-- 
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help