All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] stmmac: fix kernel crash when device probed for SPEAr with DT
@ 2012-04-17  9:24 Viresh Kumar
  2012-04-18  5:11 ` Giuseppe CAVALLARO
  0 siblings, 1 reply; 4+ messages in thread
From: Viresh Kumar @ 2012-04-17  9:24 UTC (permalink / raw)
  To: peppe.cavallaro; +Cc: spear-devel, viresh.linux, netdev, davem, Viresh Kumar

plat->dma_cfg is never allocated memory and is tried to be filled when we boot
it for SPEAr SoCs with DT. And so get a kernel crash.

Fix it by allocating memory for dma_cfg.

Signed-off-by: Viresh Kumar <viresh.kumar@st.com>
---
 .../net/ethernet/stmicro/stmmac/stmmac_platform.c  |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
index 12bd221..f124f60 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
@@ -110,6 +110,14 @@ static int stmmac_pltfr_probe(struct platform_device *pdev)
 			goto out_unmap;
 		}
 
+		plat_dat->dma_cfg = devm_kzalloc(&pdev->dev,
+				sizeof(*plat_dat->dma_cfg), GFP_KERNEL);
+		if (!plat_dat->dma_cfg) {
+			pr_err("%s: ERROR: no memory for dma_cfg", __func__);
+			ret = -ENOMEM;
+			goto out_unmap;
+		}
+
 		ret = stmmac_probe_config_dt(pdev, plat_dat, &mac);
 		if (ret) {
 			pr_err("%s: main dt probe failed", __func__);
-- 
1.7.9

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

end of thread, other threads:[~2012-04-19  5:53 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-04-17  9:24 [PATCH] stmmac: fix kernel crash when device probed for SPEAr with DT Viresh Kumar
2012-04-18  5:11 ` Giuseppe CAVALLARO
2012-04-18  5:14   ` Viresh Kumar
2012-04-19  5:51     ` Giuseppe CAVALLARO

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.