summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorIvo van Doorn <ivdoorn@gmail.com>2008-05-23 18:13:41 +0200
committerJohn W. Linville <linville@tuxdriver.com>2008-05-28 16:43:43 -0400
commit0f3e63a55b1a7b695a79bf3eec2ff5ab6b336037 (patch)
treeb24b5dd41ef30145d52e17eb43cd8595f2d84b98 /drivers
parent9381be059bf5831d259e8735005cfa35b7488543 (diff)
downloadkernel-crypto-0f3e63a55b1a7b695a79bf3eec2ff5ab6b336037.tar.gz
kernel-crypto-0f3e63a55b1a7b695a79bf3eec2ff5ab6b336037.tar.xz
kernel-crypto-0f3e63a55b1a7b695a79bf3eec2ff5ab6b336037.zip
rt2x00: Fix memleak in tx() path
When the tx() handler runs while the device has disapeared, we did return NETDEV_TX_OK but didn't free the skb. Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00mac.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00mac.c b/drivers/net/wireless/rt2x00/rt2x00mac.c
index c206b509207..87e280a2197 100644
--- a/drivers/net/wireless/rt2x00/rt2x00mac.c
+++ b/drivers/net/wireless/rt2x00/rt2x00mac.c
@@ -93,6 +93,7 @@ int rt2x00mac_tx(struct ieee80211_hw *hw, struct sk_buff *skb,
*/
if (!test_bit(DEVICE_PRESENT, &rt2x00dev->flags)) {
ieee80211_stop_queues(hw);
+ dev_kfree_skb_any(skb);
return NETDEV_TX_OK;
}