forked from Minki/linux
Bluetooth: Update buffer_seq before retransmit frames
Updating buffer_seq first make us able to ack the last I-frame received. This is also a requirement of the Profile Tuning Suite software. Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
parent
7fe9b298c9
commit
2ece3684b4
|
@ -3931,6 +3931,10 @@ expected:
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
err = l2cap_push_rx_skb(sk, skb, rx_control);
|
||||||
|
if (err < 0)
|
||||||
|
return 0;
|
||||||
|
|
||||||
if (rx_control & L2CAP_CTRL_FINAL) {
|
if (rx_control & L2CAP_CTRL_FINAL) {
|
||||||
if (pi->conn_state & L2CAP_CONN_REJ_ACT)
|
if (pi->conn_state & L2CAP_CONN_REJ_ACT)
|
||||||
pi->conn_state &= ~L2CAP_CONN_REJ_ACT;
|
pi->conn_state &= ~L2CAP_CONN_REJ_ACT;
|
||||||
|
@ -3938,10 +3942,6 @@ expected:
|
||||||
l2cap_retransmit_frames(sk);
|
l2cap_retransmit_frames(sk);
|
||||||
}
|
}
|
||||||
|
|
||||||
err = l2cap_push_rx_skb(sk, skb, rx_control);
|
|
||||||
if (err < 0)
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
__mod_ack_timer();
|
__mod_ack_timer();
|
||||||
|
|
||||||
pi->num_acked = (pi->num_acked + 1) % num_to_ack;
|
pi->num_acked = (pi->num_acked + 1) % num_to_ack;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user