Skip to content

Commit 2360f9b

Browse files
Wang Haidavem330
authored andcommitted
net: pch_gbe: fix potential memleak in pch_gbe_tx_queue()
In pch_gbe_xmit_frame(), NETDEV_TX_OK will be returned whether pch_gbe_tx_queue() sends data successfully or not, so pch_gbe_tx_queue() needs to free skb before returning. But pch_gbe_tx_queue() returns without freeing skb in case of dma_map_single() fails. Add dev_kfree_skb_any() to fix it. Fixes: 77555ee ("net: Add Gigabit Ethernet driver of Topcliff PCH") Signed-off-by: Wang Hai <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 0ad6bde commit 2360f9b

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe_main.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1143,6 +1143,7 @@ static void pch_gbe_tx_queue(struct pch_gbe_adapter *adapter,
11431143
buffer_info->dma = 0;
11441144
buffer_info->time_stamp = 0;
11451145
tx_ring->next_to_use = ring_num;
1146+
dev_kfree_skb_any(skb);
11461147
return;
11471148
}
11481149
buffer_info->mapped = true;

0 commit comments

Comments
 (0)