[PATCH net 1/2] net: fec_ptp: add clock rate zero check

Joakim Zhang qiangqing.zhang at nxp.com
Wed Jun 16 04:40:29 PDT 2021


Hi Russell,

> -----Original Message-----
> From: Russell King <linux at armlinux.org.uk>
> Sent: 2021年6月16日 18:21
> To: Joakim Zhang <qiangqing.zhang at nxp.com>
> Cc: davem at davemloft.net; kuba at kernel.org; peppe.cavallaro at st.com;
> alexandre.torgue at foss.st.com; joabreu at synopsys.com;
> mcoquelin.stm32 at gmail.com; netdev at vger.kernel.org;
> linux-kernel at vger.kernel.org; linux-stm32 at st-md-mailman.stormreply.com;
> linux-arm-kernel at lists.infradead.org; dl-linux-imx <linux-imx at nxp.com>
> 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:
> > From: Fugang Duan <fugang.duan at nxp.com>
> >
> > 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 <fugang.duan at nxp.com>
> > Signed-off-by: Joakim Zhang <qiangqing.zhang at nxp.com>
> > ---
> >  drivers/net/ethernet/freescale/fec_ptp.c | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/drivers/net/ethernet/freescale/fec_ptp.c
> > b/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, int
> irq_idx)
> >  	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!


More information about the linux-arm-kernel mailing list