Bluetooth: Increment unacked_frames count only the first transmit
authorSuraj Sumangala <suraj@atheros.com>
Wed, 9 Mar 2011 09:14:05 +0000 (14:44 +0530)
committerGustavo F. Padovan <padovan@profusion.mobi>
Thu, 24 Mar 2011 20:04:43 +0000 (17:04 -0300)
This patch lets 'l2cap_pinfo.unacked_frames' be incremented only
the first time a frame is transmitted.

Previously it was being incremented for retransmitted packets
too resulting the value to cross the transmit window size.

Signed-off-by: Suraj Sumangala <suraj@atheros.com>
Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
net/bluetooth/l2cap_core.c

index c9f9cecca5270f129217a691a16115ebbaddbf92..ca27f3a41536f35d4d608f9f0929b50105658f4d 100644 (file)
@@ -1116,7 +1116,9 @@ int l2cap_ertm_send(struct sock *sk)
                bt_cb(skb)->tx_seq = pi->next_tx_seq;
                pi->next_tx_seq = (pi->next_tx_seq + 1) % 64;
 
-               pi->unacked_frames++;
+               if (bt_cb(skb)->retries == 1)
+                       pi->unacked_frames++;
+
                pi->frames_sent++;
 
                if (skb_queue_is_last(TX_QUEUE(sk), skb))