RE: [net-next 08/13] fsl/fman: check pcsphy pointer before use

From: Madalin-Cristian Bucur
Date: Wed Oct 05 2016 - 15:41:26 EST


> -----Original Message-----
> From: David Laight [mailto:David.Laight@xxxxxxxxxx]
> Sent: Tuesday, October 04, 2016 5:44 PM
> To: Madalin-Cristian Bucur <madalin.bucur@xxxxxxx>;
> netdev@xxxxxxxxxxxxxxx
> Cc: linuxdev.baldrick@xxxxxxxxx; linuxppc-dev@xxxxxxxxxxxxxxxx;
> davem@xxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
> Subject: RE: [net-next 08/13] fsl/fman: check pcsphy pointer before use
>
> From: Madalin Bucur
> > Sent: 04 October 2016 08:33
> > Subject: [net-next 08/13] fsl/fman: check pcsphy pointer before use
> ..
> > --- a/drivers/net/ethernet/freescale/fman/fman_memac.c
> > +++ b/drivers/net/ethernet/freescale/fman/fman_memac.c
> > @@ -507,6 +507,9 @@ static void setup_sgmii_internal_phy(struct
> fman_mac *memac,
> > {
> > u16 tmp_reg16;
> >
> > + if (WARN_ON(!memac->pcsphy))
> > + return;
> > +
>
> Why?
>
> Either it can validly be NULL in which case you don't want the message.
> Or it shouldn't be NULL in which case you need to find and fix the bug.
> The later kernel OOPS will make the bug much easier to find.
>
> David

You can get into that situation if you have a broken device tree, state into
which someone may get while trying to create the device tree for a new
board. Avoiding a crash here allows the user to look at the device trees as
seen by the kernel / add some debug code if needed.

Madalin