aboutsummaryrefslogtreecommitdiffstats
path: root/net/bluetooth/l2cap.c
diff options
context:
space:
mode:
authorGustavo F. Padovan <padovan@profusion.mobi>2010-05-01 15:15:42 -0400
committerMarcel Holtmann <marcel@holtmann.org>2010-05-10 03:28:50 -0400
commit812e737e29a1d559e7bfbea675fdcfcbad9f5e1f (patch)
tree2f4a201363ae5738e3d70b5d51e8406211df51ef /net/bluetooth/l2cap.c
parent0ee0d20855ae9271de3f6695f4cafc08ab2533bb (diff)
Bluetooth: Fix drop of acked packets on ERTM
l2cap_drop_acked_frames() was droping not sent packets, causing them to be not transmitted. Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi> Reviewed-by: João Paulo Rechi Vita <jprvita@profusion.mobi> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth/l2cap.c')
-rw-r--r--net/bluetooth/l2cap.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/bluetooth/l2cap.c b/net/bluetooth/l2cap.c
index 2f9bbad42887..042fd967e79c 100644
--- a/net/bluetooth/l2cap.c
+++ b/net/bluetooth/l2cap.c
@@ -1262,7 +1262,8 @@ static void l2cap_drop_acked_frames(struct sock *sk)
1262{ 1262{
1263 struct sk_buff *skb; 1263 struct sk_buff *skb;
1264 1264
1265 while ((skb = skb_peek(TX_QUEUE(sk)))) { 1265 while ((skb = skb_peek(TX_QUEUE(sk))) &&
1266 l2cap_pi(sk)->unacked_frames) {
1266 if (bt_cb(skb)->tx_seq == l2cap_pi(sk)->expected_ack_seq) 1267 if (bt_cb(skb)->tx_seq == l2cap_pi(sk)->expected_ack_seq)
1267 break; 1268 break;
1268 1269