From: Yao Zi <ziyao@disroot.org>
To: "Russell King (Oracle)" <linux@armlinux.org.uk>,
Chaoyi Chen <chaoyi.chen@rock-chips.com>
Cc: Andrew Lunn <andrew+netdev@lunn.ch>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Jonas Karlman <jonas@kwiboo.se>,
David Wu <david.wu@rock-chips.com>,
netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org
Subject: Re: [PATCH net] net: stmmac: dwmac-rk: Ensure clk_phy doesn't contain invalid address
Date: Sat, 6 Sep 2025 05:36:44 +0000 [thread overview]
Message-ID: <aLvIbPfWWNa6TwNv@pie> (raw)
In-Reply-To: <aLly7lJ05xQjqCWn@shell.armlinux.org.uk>
On Thu, Sep 04, 2025 at 12:07:26PM +0100, Russell King (Oracle) wrote:
> On Thu, Sep 04, 2025 at 12:05:19PM +0100, Russell King (Oracle) wrote:
> > On Thu, Sep 04, 2025 at 07:03:10PM +0800, Chaoyi Chen wrote:
> > >
> > > On 9/4/2025 6:58 PM, Russell King (Oracle) wrote:
> > > > On Thu, Sep 04, 2025 at 03:12:24AM +0000, Yao Zi wrote:
> > > > > if (plat->phy_node) {
> > > > > bsp_priv->clk_phy = of_clk_get(plat->phy_node, 0);
> > > > > ret = PTR_ERR_OR_ZERO(bsp_priv->clk_phy);
> > > > > - /* If it is not integrated_phy, clk_phy is optional */
> > > > > + /*
> > > > > + * If it is not integrated_phy, clk_phy is optional. But we must
> > > > > + * set bsp_priv->clk_phy to NULL if clk_phy isn't proivded, or
> > > > > + * the error code could be wrongly taken as an invalid pointer.
> > > > > + */
> > > > I'm concerned by this. This code is getting the first clock from the DT
> > > > description of the PHY. We don't know what type of PHY it is, or what
> > > > the DT description of that PHY might suggest that the first clock would
> > > > be.
> > > >
> > > > However, we're geting it and setting it to 50MHz. What if the clock is
> > > > not what we think it is?
> > >
> > > We only set integrated_phy to 50M, which are all known targets. For external PHYs, we do not perform frequency settings.
> >
> > Same question concerning enabling and disabling another device's clock
> > that the other device should be handling.
>
> Let me be absolutely clear: I consider *everything* that is going on
> with clk_phy here to be a dirty hack.
>
> Resources used by a device that has its own driver should be managed
> by _that_ driver alone, not by some other random driver.
Agree on this. Should we drop the patch, or fix it up for now to at
least prevent the oops? Chaoyi, I guess there's no user of the feature
for now, is it?
Best regards,
Yao Zi
> --
> RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
> FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!
WARNING: multiple messages have this Message-ID (diff)
From: Yao Zi <ziyao@disroot.org>
To: "Russell King (Oracle)" <linux@armlinux.org.uk>,
Chaoyi Chen <chaoyi.chen@rock-chips.com>
Cc: Andrew Lunn <andrew+netdev@lunn.ch>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Jonas Karlman <jonas@kwiboo.se>,
David Wu <david.wu@rock-chips.com>,
netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org
Subject: Re: [PATCH net] net: stmmac: dwmac-rk: Ensure clk_phy doesn't contain invalid address
Date: Sat, 6 Sep 2025 05:36:44 +0000 [thread overview]
Message-ID: <aLvIbPfWWNa6TwNv@pie> (raw)
In-Reply-To: <aLly7lJ05xQjqCWn@shell.armlinux.org.uk>
On Thu, Sep 04, 2025 at 12:07:26PM +0100, Russell King (Oracle) wrote:
> On Thu, Sep 04, 2025 at 12:05:19PM +0100, Russell King (Oracle) wrote:
> > On Thu, Sep 04, 2025 at 07:03:10PM +0800, Chaoyi Chen wrote:
> > >
> > > On 9/4/2025 6:58 PM, Russell King (Oracle) wrote:
> > > > On Thu, Sep 04, 2025 at 03:12:24AM +0000, Yao Zi wrote:
> > > > > if (plat->phy_node) {
> > > > > bsp_priv->clk_phy = of_clk_get(plat->phy_node, 0);
> > > > > ret = PTR_ERR_OR_ZERO(bsp_priv->clk_phy);
> > > > > - /* If it is not integrated_phy, clk_phy is optional */
> > > > > + /*
> > > > > + * If it is not integrated_phy, clk_phy is optional. But we must
> > > > > + * set bsp_priv->clk_phy to NULL if clk_phy isn't proivded, or
> > > > > + * the error code could be wrongly taken as an invalid pointer.
> > > > > + */
> > > > I'm concerned by this. This code is getting the first clock from the DT
> > > > description of the PHY. We don't know what type of PHY it is, or what
> > > > the DT description of that PHY might suggest that the first clock would
> > > > be.
> > > >
> > > > However, we're geting it and setting it to 50MHz. What if the clock is
> > > > not what we think it is?
> > >
> > > We only set integrated_phy to 50M, which are all known targets. For external PHYs, we do not perform frequency settings.
> >
> > Same question concerning enabling and disabling another device's clock
> > that the other device should be handling.
>
> Let me be absolutely clear: I consider *everything* that is going on
> with clk_phy here to be a dirty hack.
>
> Resources used by a device that has its own driver should be managed
> by _that_ driver alone, not by some other random driver.
Agree on this. Should we drop the patch, or fix it up for now to at
least prevent the oops? Chaoyi, I guess there's no user of the feature
for now, is it?
Best regards,
Yao Zi
> --
> RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
> FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
next prev parent reply other threads:[~2025-09-06 5:40 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-04 3:12 [PATCH net] net: stmmac: dwmac-rk: Ensure clk_phy doesn't contain invalid address Yao Zi
2025-09-04 3:12 ` Yao Zi
2025-09-04 9:54 ` Simon Horman
2025-09-04 9:54 ` Simon Horman
2025-09-04 9:56 ` Simon Horman
2025-09-04 9:56 ` Simon Horman
2025-09-04 10:10 ` Yao Zi
2025-09-04 10:10 ` Yao Zi
2025-09-04 10:28 ` Simon Horman
2025-09-04 10:28 ` Simon Horman
2025-09-04 10:34 ` Simon Horman
2025-09-04 10:34 ` Simon Horman
2025-09-04 10:49 ` Russell King (Oracle)
2025-09-04 10:49 ` Russell King (Oracle)
2025-09-04 10:58 ` Chaoyi Chen
2025-09-04 10:58 ` Chaoyi Chen
2025-09-04 11:20 ` Yao Zi
2025-09-04 11:20 ` Yao Zi
2025-09-04 11:13 ` Yao Zi
2025-09-04 11:13 ` Yao Zi
2025-09-04 10:58 ` Russell King (Oracle)
2025-09-04 10:58 ` Russell King (Oracle)
2025-09-04 11:03 ` Chaoyi Chen
2025-09-04 11:03 ` Chaoyi Chen
2025-09-04 11:05 ` Russell King (Oracle)
2025-09-04 11:05 ` Russell King (Oracle)
2025-09-04 11:07 ` Russell King (Oracle)
2025-09-04 11:07 ` Russell King (Oracle)
2025-09-06 5:36 ` Yao Zi [this message]
2025-09-06 5:36 ` Yao Zi
2025-09-06 6:26 ` Chaoyi Chen
2025-09-06 6:26 ` Chaoyi Chen
2025-09-06 20:25 ` Sebastian Reichel
2025-09-06 20:25 ` Sebastian Reichel
2025-09-15 3:38 ` Chaoyi Chen
2025-09-15 3:38 ` Chaoyi Chen
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=aLvIbPfWWNa6TwNv@pie \
--to=ziyao@disroot.org \
--cc=andrew+netdev@lunn.ch \
--cc=chaoyi.chen@rock-chips.com \
--cc=davem@davemloft.net \
--cc=david.wu@rock-chips.com \
--cc=edumazet@google.com \
--cc=jonas@kwiboo.se \
--cc=kuba@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux@armlinux.org.uk \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.