linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] net: stmmac: fix kernel panic due to NULL pointer dereference of mdio_bus_data
       [not found] <CGME20210528070406epcas5p3807d9c8f8a68c0c4a75af9951476c1b7@epcas5p3.samsung.com>
@ 2021-05-28  7:10 ` Sriranjani P
  2021-05-30 21:16   ` Jakub Kicinski
  0 siblings, 1 reply; 2+ messages in thread
From: Sriranjani P @ 2021-05-28  7:10 UTC (permalink / raw)
  To: netdev, linux-arm-kernel, linux-kernel
  Cc: peppe.cavallaro, alexandre.torgue, joabreu, davem, kuba,
	mcoquelin.stm32, linux, boon.leong.ong, Sriranjani P,
	Pankaj Dubey

Fixed link does not need mdio bus and in that case mdio_bus_data will
not be allocated. Before using mdio_bus_data we should check for NULL.

This patch fix the kernel panic due to NULL pointer dereference of
mdio_bus_data when it is not allocated.

Without this patch we do see following kernel crash caused due to kernel
NULL pointer dereference.

Call trace:
stmmac_dvr_probe+0x3c/0x10b0
dwc_eth_dwmac_probe+0x224/0x378
platform_probe+0x68/0xe0
really_probe+0x130/0x3d8
driver_probe_device+0x68/0xd0
device_driver_attach+0x74/0x80
__driver_attach+0x58/0xf8
bus_for_each_dev+0x7c/0xd8
driver_attach+0x24/0x30
bus_add_driver+0x148/0x1f0
driver_register+0x64/0x120
__platform_driver_register+0x28/0x38
dwc_eth_dwmac_driver_init+0x1c/0x28
do_one_initcall+0x78/0x158
kernel_init_freeable+0x1f0/0x244
kernel_init+0x14/0x118
ret_from_fork+0x10/0x30
Code: f9002bfb 9113e2d9 910e6273 aa0003f7 (f9405c78)
---[ end trace 32d9d41562ddc081 ]---

Fixes: e5e5b771f684 ("net: stmmac: make in-band AN mode parsing is supported for non-DT")
Signed-off-by: Sriranjani P <sriranjani.p@samsung.com>
Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com>
---
 drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
index 5d956a553434..5d7688d02255 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
@@ -1240,8 +1240,10 @@ static int stmmac_phy_setup(struct stmmac_priv *priv)
 	priv->phylink_config.dev = &priv->dev->dev;
 	priv->phylink_config.type = PHYLINK_NETDEV;
 	priv->phylink_config.pcs_poll = true;
-	priv->phylink_config.ovr_an_inband =
-		priv->plat->mdio_bus_data->xpcs_an_inband;
+	if (priv->plat->mdio_bus_data) {
+		priv->phylink_config.ovr_an_inband =
+			priv->plat->mdio_bus_data->xpcs_an_inband;
+	}
 
 	if (!fwnode)
 		fwnode = dev_fwnode(priv->device);
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] net: stmmac: fix kernel panic due to NULL pointer dereference of mdio_bus_data
  2021-05-28  7:10 ` [PATCH] net: stmmac: fix kernel panic due to NULL pointer dereference of mdio_bus_data Sriranjani P
@ 2021-05-30 21:16   ` Jakub Kicinski
  0 siblings, 0 replies; 2+ messages in thread
From: Jakub Kicinski @ 2021-05-30 21:16 UTC (permalink / raw)
  To: Sriranjani P
  Cc: netdev, linux-arm-kernel, linux-kernel, peppe.cavallaro,
	alexandre.torgue, joabreu, davem, mcoquelin.stm32, linux,
	boon.leong.ong, Pankaj Dubey

On Fri, 28 May 2021 12:40:56 +0530 Sriranjani P wrote:
> Fixed link does not need mdio bus and in that case mdio_bus_data will
> not be allocated. Before using mdio_bus_data we should check for NULL.
> 
> This patch fix the kernel panic due to NULL pointer dereference of
> mdio_bus_data when it is not allocated.
> 
> Without this patch we do see following kernel crash caused due to kernel
> NULL pointer dereference.

Applied, thanks.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-05-30 21:16 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <CGME20210528070406epcas5p3807d9c8f8a68c0c4a75af9951476c1b7@epcas5p3.samsung.com>
2021-05-28  7:10 ` [PATCH] net: stmmac: fix kernel panic due to NULL pointer dereference of mdio_bus_data Sriranjani P
2021-05-30 21:16   ` Jakub Kicinski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).