From: Dan Carpenter <dan.carpenter@oracle.com>
Date: Tue, 15 Nov 2011 22:36:43 +0000 (+0000)
Subject: 6LoWPAN: double free in lowpan_fragment_xmit()
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=d445ba613fe445c8f30733e68089614b40b3df5b;p=linux.git

6LoWPAN: double free in lowpan_fragment_xmit()

dev_queue_xmit() consumes its own skb, so the call to dev_kfree_skb()
in lowpan_fragment_xmit() is a double free.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Alexander Smirnov <alex.bluesman.smirnov@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
---

diff --git a/net/ieee802154/6lowpan.c b/net/ieee802154/6lowpan.c
index 602f318a8d62f..e4ecc1eef98c3 100644
--- a/net/ieee802154/6lowpan.c
+++ b/net/ieee802154/6lowpan.c
@@ -980,9 +980,6 @@ lowpan_fragment_xmit(struct sk_buff *skb, u8 *head,
 
 	ret = dev_queue_xmit(frag);
 
-	if (ret < 0)
-		dev_kfree_skb(frag);
-
 	return ret;
 }