diff options
Diffstat (limited to 'net/bluetooth/l2cap.c')
| -rw-r--r-- | net/bluetooth/l2cap.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/net/bluetooth/l2cap.c b/net/bluetooth/l2cap.c index 5129b88c8e5b..1120cf14a548 100644 --- a/net/bluetooth/l2cap.c +++ b/net/bluetooth/l2cap.c | |||
| @@ -1212,6 +1212,7 @@ static void l2cap_monitor_timeout(unsigned long arg) | |||
| 1212 | bh_lock_sock(sk); | 1212 | bh_lock_sock(sk); |
| 1213 | if (l2cap_pi(sk)->retry_count >= l2cap_pi(sk)->remote_max_tx) { | 1213 | if (l2cap_pi(sk)->retry_count >= l2cap_pi(sk)->remote_max_tx) { |
| 1214 | l2cap_send_disconn_req(l2cap_pi(sk)->conn, sk); | 1214 | l2cap_send_disconn_req(l2cap_pi(sk)->conn, sk); |
| 1215 | bh_unlock_sock(sk); | ||
| 1215 | return; | 1216 | return; |
| 1216 | } | 1217 | } |
| 1217 | 1218 | ||
| @@ -3435,8 +3436,8 @@ static inline int l2cap_data_channel_sframe(struct sock *sk, u16 rx_control, str | |||
| 3435 | (pi->unacked_frames > 0)) | 3436 | (pi->unacked_frames > 0)) |
| 3436 | __mod_retrans_timer(); | 3437 | __mod_retrans_timer(); |
| 3437 | 3438 | ||
| 3438 | l2cap_ertm_send(sk); | ||
| 3439 | pi->conn_state &= ~L2CAP_CONN_REMOTE_BUSY; | 3439 | pi->conn_state &= ~L2CAP_CONN_REMOTE_BUSY; |
| 3440 | l2cap_ertm_send(sk); | ||
| 3440 | } | 3441 | } |
| 3441 | break; | 3442 | break; |
| 3442 | 3443 | ||
| @@ -3471,9 +3472,9 @@ static inline int l2cap_data_channel_sframe(struct sock *sk, u16 rx_control, str | |||
| 3471 | pi->conn_state &= ~L2CAP_CONN_REMOTE_BUSY; | 3472 | pi->conn_state &= ~L2CAP_CONN_REMOTE_BUSY; |
| 3472 | 3473 | ||
| 3473 | if (rx_control & L2CAP_CTRL_POLL) { | 3474 | if (rx_control & L2CAP_CTRL_POLL) { |
| 3474 | l2cap_retransmit_frame(sk, tx_seq); | ||
| 3475 | pi->expected_ack_seq = tx_seq; | 3475 | pi->expected_ack_seq = tx_seq; |
| 3476 | l2cap_drop_acked_frames(sk); | 3476 | l2cap_drop_acked_frames(sk); |
| 3477 | l2cap_retransmit_frame(sk, tx_seq); | ||
| 3477 | l2cap_ertm_send(sk); | 3478 | l2cap_ertm_send(sk); |
| 3478 | if (pi->conn_state & L2CAP_CONN_WAIT_F) { | 3479 | if (pi->conn_state & L2CAP_CONN_WAIT_F) { |
| 3479 | pi->srej_save_reqseq = tx_seq; | 3480 | pi->srej_save_reqseq = tx_seq; |
