Thread (1 message) 1 message, 1 author, 2016-03-06

RE: [PATCH RESEND] net:fec:Fix error checking in the function fec_enet_init

From: Fugang Duan <hidden>
Date: 2016-03-06 00:00:21
Also in: lkml

From: Nicholas Krause <redacted> Sent: Saturday, March 05, 2016 4:00 AM
quoted hunk
To: davem@davemloft.net
Cc: b38611@freescale.com; andrew@lunn.ch; fabio.estevam@freescale.com;
l.stach@pengutronix.de; rmk+kernel@arm.linux.org.uk; tremyfr@gmail.com;
johannes@sipsolutions.net; u.kleine-koenig@pengutronix.de;
haokexin@gmail.com; netdev@vger.kernel.org; linux-kernel@vger.kernel.org
Subject: [PATCH RESEND] net:fec:Fix error checking in the function
fec_enet_init

This fixes error checking in the function fec_enet_init to properly check if the
internal call to the function fec_enet_alloc_queue fails and if so immediately
return the error code to the caller for it to handle it's own intended error paths.

Signed-off-by: Nicholas Krause <redacted>
---
 drivers/net/ethernet/freescale/fec_main.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/freescale/fec_main.c
b/drivers/net/ethernet/freescale/fec_main.c
index b349e6f..18c625f 100644
--- a/drivers/net/ethernet/freescale/fec_main.c
+++ b/drivers/net/ethernet/freescale/fec_main.c
@@ -3123,6 +3123,7 @@ static int fec_enet_init(struct net_device *ndev)
 	dma_addr_t bd_dma;
 	int bd_size;
 	unsigned int i;
+	int ret;

 #if defined(CONFIG_ARM)
 	fep->rx_align = 0xf;
@@ -3132,7 +3133,9 @@ static int fec_enet_init(struct net_device *ndev)
 	fep->tx_align = 0x3;
 #endif

-	fec_enet_alloc_queue(ndev);
+	ret = fec_enet_alloc_queue(ndev);
+	if (ret)
+		return ret;

 	if (fep->bufdesc_ex)
 		fep->bufdesc_size = sizeof(struct bufdesc_ex);
--
2.1.4
Thanks.

Acked-by: Fugang Duan <redacted>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help