From: Andrei Emeltchenko <andrei.emeltchenko@xxxxxxxxx> Trivial fix for double free of skb pointer with kfree_skb to make code simplier and cleaner. skb is already freed within l2cap_data_channel_iframe function. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@xxxxxxxxx> --- net/bluetooth/l2cap.c | 4 +--- 1 files changed, 1 insertions(+), 3 deletions(-) diff --git a/net/bluetooth/l2cap.c b/net/bluetooth/l2cap.c index 1120cf1..9584b97 100644 --- a/net/bluetooth/l2cap.c +++ b/net/bluetooth/l2cap.c @@ -3574,9 +3574,7 @@ static inline int l2cap_data_channel(struct l2cap_conn *conn, u16 cid, struct sk else err = l2cap_data_channel_sframe(sk, control, skb); - if (!err) - goto done; - break; + goto done; case L2CAP_MODE_STREAMING: control = get_unaligned_le16(skb->data); -- 1.6.0.4
From fb5bfc6157028c6047a8f9ef60abcef89aa243d4 Mon Sep 17 00:00:00 2001 From: Andrei Emeltchenko <andrei.emeltchenko@xxxxxxxxx> Date: Tue, 22 Dec 2009 15:05:06 +0200 Subject: [PATCH] Bluetooth: Remove double free of skb pointer Trivial fix for double free of skb pointer with kfree_skb to make code simplier and cleaner. skb is already freed within l2cap_data_channel_iframe function. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@xxxxxxxxx> --- net/bluetooth/l2cap.c | 4 +--- 1 files changed, 1 insertions(+), 3 deletions(-) diff --git a/net/bluetooth/l2cap.c b/net/bluetooth/l2cap.c index 1120cf1..9584b97 100644 --- a/net/bluetooth/l2cap.c +++ b/net/bluetooth/l2cap.c @@ -3574,9 +3574,7 @@ static inline int l2cap_data_channel(struct l2cap_conn *conn, u16 cid, struct sk else err = l2cap_data_channel_sframe(sk, control, skb); - if (!err) - goto done; - break; + goto done; case L2CAP_MODE_STREAMING: control = get_unaligned_le16(skb->data); -- 1.6.0.4