diff mbox series

[net] net: mvpp2: fix memory leak in mvpp2_rx

Message ID c1c2f9c0b79d4a84701d374c6e63f69ec3f42098.1596184502.git.lorenzo@kernel.org
State Accepted
Delegated to: David Miller
Headers show
Series [net] net: mvpp2: fix memory leak in mvpp2_rx | expand

Commit Message

Lorenzo Bianconi July 31, 2020, 8:38 a.m. UTC
Release skb memory in mvpp2_rx() if mvpp2_rx_refill routine fails

Fixes: b5015854674b ("net: mvpp2: fix refilling BM pools in RX path")
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
---
 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Matteo Croce July 31, 2020, 9:38 a.m. UTC | #1
> Release skb memory in mvpp2_rx() if mvpp2_rx_refill routine fails
> 
> Fixes: b5015854674b ("net: mvpp2: fix refilling BM pools in RX path")
> Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>

I think that mvpp2_rx() has changed a bit in net-next due to the XDP support, but it should apply too.

Acked-by: Matteo Croce <mcroce@microsoft.com>
David Miller Aug. 3, 2020, 10:15 p.m. UTC | #2
From: Lorenzo Bianconi <lorenzo@kernel.org>
Date: Fri, 31 Jul 2020 10:38:32 +0200

> Release skb memory in mvpp2_rx() if mvpp2_rx_refill routine fails
> 
> Fixes: b5015854674b ("net: mvpp2: fix refilling BM pools in RX path")
> Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>

Applied and queued up for -stable, thank you.
diff mbox series

Patch

diff --git a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
index 24f4d8e0da98..ee72397813d4 100644
--- a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
+++ b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
@@ -2981,6 +2981,7 @@  static int mvpp2_rx(struct mvpp2_port *port, struct napi_struct *napi,
 		err = mvpp2_rx_refill(port, bm_pool, pool);
 		if (err) {
 			netdev_err(port->dev, "failed to refill BM pools\n");
+			dev_kfree_skb_any(skb);
 			goto err_drop_frame;
 		}