[PATCH net] net: ethernet: aeroflex: fix potential memory leak in greth_start_xmit_gbit()

From: Wang Hai
Date: Fri Oct 11 2024 - 07:40:06 EST


The greth_start_xmit_gbit() returns NETDEV_TX_OK without freeing skb
in case of skb->len being too long, add dev_kfree_skb() to fix it.

Fixes: d4c41139df6e ("net: Add Aeroflex Gaisler 10/100/1G Ethernet MAC driver")
Signed-off-by: Wang Hai <wanghai38@xxxxxxxxxx>
---
drivers/net/ethernet/aeroflex/greth.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/net/ethernet/aeroflex/greth.c b/drivers/net/ethernet/aeroflex/greth.c
index 27af7746d645..8f6835a710b9 100644
--- a/drivers/net/ethernet/aeroflex/greth.c
+++ b/drivers/net/ethernet/aeroflex/greth.c
@@ -484,6 +484,7 @@ greth_start_xmit_gbit(struct sk_buff *skb, struct net_device *dev)

if (unlikely(skb->len > MAX_FRAME_SIZE)) {
dev->stats.tx_errors++;
+ dev_kfree_skb(skb);
goto out;
}

--
2.17.1