mirror of
https://github.com/nxp-imx/linux-imx.git
synced 2025-07-06 17:35:20 +02:00
net: ethernet: aeroflex: fix potential memory leak in greth_start_xmit_gbit()
[ Upstream commitcf57b5d7a2
] 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:d4c41139df
("net: Add Aeroflex Gaisler 10/100/1G Ethernet MAC driver") Signed-off-by: Wang Hai <wanghai38@huawei.com> Reviewed-by: Gerhard Engleder <gerhard@engleder-embedded.com> Link: https://patch.msgid.link/20241012110434.49265-1-wanghai38@huawei.com Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
681ce79ab6
commit
79571c4d2f
|
@ -484,7 +484,7 @@ greth_start_xmit_gbit(struct sk_buff *skb, struct net_device *dev)
|
||||||
|
|
||||||
if (unlikely(skb->len > MAX_FRAME_SIZE)) {
|
if (unlikely(skb->len > MAX_FRAME_SIZE)) {
|
||||||
dev->stats.tx_errors++;
|
dev->stats.tx_errors++;
|
||||||
goto out;
|
goto len_error;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Save skb pointer. */
|
/* Save skb pointer. */
|
||||||
|
@ -575,6 +575,7 @@ frag_map_error:
|
||||||
map_error:
|
map_error:
|
||||||
if (net_ratelimit())
|
if (net_ratelimit())
|
||||||
dev_warn(greth->dev, "Could not create TX DMA mapping\n");
|
dev_warn(greth->dev, "Could not create TX DMA mapping\n");
|
||||||
|
len_error:
|
||||||
dev_kfree_skb(skb);
|
dev_kfree_skb(skb);
|
||||||
out:
|
out:
|
||||||
return err;
|
return err;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user