Devicetree
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Sebastian Reichel" <sebastian.reichel@collabora.com>
Cc: robh@kernel.org, vkoul@kernel.org, neil.armstrong@linaro.org,
	olteanv@gmail.com, devicetree@vger.kernel.org,
	linux-phy@lists.infradead.org, conor+dt@kernel.org
Subject: Re: [PATCH v7 05/27] phy: rockchip: usbdp: Handle missing clock-names DT property gracefully
Date: Thu, 25 Jun 2026 17:59:21 +0000	[thread overview]
Message-ID: <20260625175922.1CFBE1F000E9@smtp.kernel.org> (raw)
In-Reply-To: <20260625-rockchip-usbdp-cleanup-v7-5-38eb3cf654fd@collabora.com>

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

Pre-existing issues:
- [High] Unchecked NULL pointer dereference when comparing clock IDs from non-compliant Device Trees.
--

commit be75e70030d6a112304beae15bcbe8b9d870c214
Author: Sebastian Reichel <sebastian.reichel@collabora.com>

phy: rockchip: usbdp: Handle missing clock-names DT property gracefully

This patch adds a check to ensure the clock id string is present before
comparing it, preventing a null pointer dereference when parsing a
non-compliant device tree.

> diff --git a/drivers/phy/rockchip/phy-rockchip-usbdp.c b/drivers/phy/rockchip/phy-rockchip-usbdp.c
> index 2845a012eafcc..3fc8222fcaec2 100644
> --- a/drivers/phy/rockchip/phy-rockchip-usbdp.c
> +++ b/drivers/phy/rockchip/phy-rockchip-usbdp.c
> @@ -432,6 +432,9 @@ static int rk_udphy_clk_init(struct rk_udphy *udphy, struct device *dev)
>  
>  	/* used for configure phy reference clock frequency */
>  	for (i = 0; i < udphy->num_clks; i++) {
> +		if (!udphy->clks[i].id)
> +			continue;
> +

[Severity: High]
This isn't a bug introduced by this patch, but since you are fixing the
missing clock-names behavior here, could this same vulnerability be
present in other drivers?

Looking at the tree, several other drivers also iterate over clocks
returned by devm_clk_bulk_get_all() and pass the id field directly to
strcmp() or strncmp() without checking if it is null.

For example, in drivers/phy/rockchip/phy-rockchip-inno-usb2.c:
rockchip_usb2phy_clk480m_register() does:

    if (!strncmp(rphy->clks[i].id, "phyclk", 6)) {

Similarly, in drivers/phy/rockchip/phy-rockchip-naneng-combphy.c:
rockchip_combphy_parse_dt() does:

    if (!strncmp(priv->clks[i].id, "ref", 3)) {

There appear to be similar unchecked usages in:
drivers/pci/controller/dwc/pci-imx6.c:imx_pcie_setup_phy()
drivers/spi/spi-rzv2h-rspi.c:rzv2h_rspi_probe()
drivers/crypto/rockchip/rk3288_crypto.c:rk_crypto_get_clks()
drivers/media/platform/nxp/imx8mq-mipi-csi2.c:imx8mq_mipi_csi_find_esc_clk()

Should these be audited and patched similarly to prevent a panic when
handling malformed device trees?

>  		if (!strncmp(udphy->clks[i].id, "refclk", 6)) {
>  			udphy->refclk = udphy->clks[i].clk;
>  			break;

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260625-rockchip-usbdp-cleanup-v7-0-38eb3cf654fd@collabora.com?part=5

  reply	other threads:[~2026-06-25 17:59 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-25 17:39 [PATCH v7 00/27] phy: rockchip: usbdp: Fixes, DP 1-lane support and cleanups Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 01/27] dt-bindings: phy: rockchip-usbdp: add improved ports scheme Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 02/27] phy: rockchip: usbdp: Update mode_change after error handling Sebastian Reichel
2026-06-25 18:00   ` sashiko-bot
2026-06-25 17:39 ` [PATCH v7 03/27] phy: rockchip: usbdp: Do not lose USB3 PHY status Sebastian Reichel
2026-06-25 18:06   ` sashiko-bot
2026-06-25 17:39 ` [PATCH v7 04/27] phy: rockchip: usbdp: Fix devm_clk_bulk_get_all check Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 05/27] phy: rockchip: usbdp: Handle missing clock-names DT property gracefully Sebastian Reichel
2026-06-25 17:59   ` sashiko-bot [this message]
2026-06-25 17:39 ` [PATCH v7 06/27] phy: rockchip: usbdp: Drop seamless DP takeover Sebastian Reichel
2026-06-25 17:58   ` sashiko-bot
2026-06-25 17:39 ` [PATCH v7 07/27] phy: rockchip: usbdp: Handle rk_udphy_reset_deassert_all errors in init check Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 08/27] phy: rockchip: usbdp: Limit DP lane count to muxed lanes Sebastian Reichel
2026-06-25 18:07   ` sashiko-bot
2026-06-25 17:39 ` [PATCH v7 09/27] phy: rockchip: usbdp: Keep clocks running on PHY re-init Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 10/27] phy: rockchip: usbdp: Amend SSC modulation deviation Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 11/27] phy: rockchip: usbdp: Fix LFPS detect threshold control Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 12/27] phy: rockchip: usbdp: Add missing mode_change update Sebastian Reichel
2026-06-25 18:02   ` sashiko-bot
2026-06-25 17:39 ` [PATCH v7 13/27] phy: rockchip: usbdp: Support single-lane DP Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 14/27] phy: rockchip: usbdp: Rename DP lane functions Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 15/27] phy: rockchip: usbdp: Use FIELD_PREP_WM16_CONST Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 16/27] phy: rockchip: usbdp: Cleanup DP lane selection function Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 17/27] phy: rockchip: usbdp: Register DP aux bridge Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 18/27] phy: rockchip: usbdp: Drop DP HPD handling Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 19/27] phy: rockchip: usbdp: Rename mode_change to phy_needs_reinit Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 20/27] phy: rockchip: usbdp: Re-init the PHY on orientation change Sebastian Reichel
2026-06-25 18:09   ` sashiko-bot
2026-06-25 17:39 ` [PATCH v7 21/27] phy: rockchip: usbdp: Factor out lane_mux_sel setup Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 22/27] phy: rockchip: usbdp: Properly handle TYPEC_STATE_SAFE and TYPEC_STATE_USB Sebastian Reichel
2026-06-25 18:11   ` sashiko-bot
2026-06-25 17:39 ` [PATCH v7 23/27] phy: rockchip: usbdp: Use guard functions for mutex Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 24/27] phy: rockchip: usbdp: Support going from DP-only mode to USB mode Sebastian Reichel
2026-06-25 18:12   ` sashiko-bot
2026-06-25 17:39 ` [PATCH v7 25/27] phy: rockchip: usbdp: Hold mutex in DP PHY configure Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 26/27] phy: rockchip: usbdp: Add some extra debug messages Sebastian Reichel
2026-06-25 17:39 ` [PATCH v7 27/27] phy: rockchip: usbdp: Avoid xHCI SErrors Sebastian Reichel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260625175922.1CFBE1F000E9@smtp.kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=linux-phy@lists.infradead.org \
    --cc=neil.armstrong@linaro.org \
    --cc=olteanv@gmail.com \
    --cc=robh@kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    --cc=sebastian.reichel@collabora.com \
    --cc=vkoul@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox