RE: [PATCH net 1/2] net: fec_ptp: add clock rate zero check
From: Joakim Zhang <hidden>
Date: 2021-06-16 11:40:36
Also in:
linux-arm-kernel, lkml
Hi Russell,
-----Original Message----- From: Russell King <linux@armlinux.org.uk> Sent: 2021年6月16日 18:21 To: Joakim Zhang <redacted> Cc: davem@davemloft.net; kuba@kernel.org; peppe.cavallaro@st.com; alexandre.torgue@foss.st.com; joabreu@synopsys.com; mcoquelin.stm32@gmail.com; netdev@vger.kernel.org; linux-kernel@vger.kernel.org; linux-stm32@st-md-mailman.stormreply.com; linux-arm-kernel@lists.infradead.org; dl-linux-imx [off-list ref] Subject: Re: [PATCH net 1/2] net: fec_ptp: add clock rate zero check On Wed, Jun 16, 2021 at 05:14:25PM +0800, Joakim Zhang wrote:quoted
From: Fugang Duan <redacted> Add clock rate zero check to fix coverity issue of "divide by 0". Fixes: commit 85bd1798b24a ("net: fec: fix spin_lock dead lock") Signed-off-by: Fugang Duan <redacted> Signed-off-by: Joakim Zhang <redacted> --- drivers/net/ethernet/freescale/fec_ptp.c | 4 ++++ 1 file changed, 4 insertions(+)diff --git a/drivers/net/ethernet/freescale/fec_ptp.cb/drivers/net/ethernet/freescale/fec_ptp.c index 1753807cbf97..7326a0612823 100644--- a/drivers/net/ethernet/freescale/fec_ptp.c +++ b/drivers/net/ethernet/freescale/fec_ptp.c@@ -604,6 +604,10 @@ void fec_ptp_init(struct platform_device *pdev, intirq_idx)quoted
fep->ptp_caps.enable = fec_ptp_enable; fep->cycle_speed = clk_get_rate(fep->clk_ptp); + if (!fep->cycle_speed) { + fep->cycle_speed = NSEC_PER_SEC; + dev_err(&fep->pdev->dev, "clk_ptp clock rate is zero\n");If this is supposed to be an error message, it doesn't convey that something is really wrong to the user. Maybe something like this would be more meaningful to the user: "PTP clock rate should not be zero, using 1GHz instead. PTP clock may be unreliable.\n"
Make Sense.
It may be appropriate not to publish PTP support for the interface if we don't have a valid clock rate, which is probably the safer approach and would probably make the problem more noticable to the end user so it gets fixed.
Do you mean that print an error message then return directly? It seems better.
if (!fep->cycle_speed) {
dev_err(&fep->pdev->dev, "PTP clock rate should not be zero!\n");
return;
}
Best Regards,
Joakim Zhang-- RMK's Patch system: https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ar mlinux.org.uk%2Fdeveloper%2Fpatches%2F&data=04%7C01%7Cqiangqin g.zhang%40nxp.com%7Cb3c85322e359446e4eee08d930b06701%7C686ea1d3 bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637594356476903644%7CUnknow n%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1ha WwiLCJXVCI6Mn0%3D%7C1000&sdata=TH4fZJRu8Ii6w7y05N8CHWoQR R9OegsYB7VAwgSpTcU%3D&reserved=0 FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last!