linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Gustavo F. Padovan" <padovan@profusion.mobi>
To: linux-bluetooth@vger.kernel.org
Cc: marcel@holtmann.org, gustavo@padovan.org, jprvita@profusion.mobi
Subject: [PATCH] Bluetooth: Stop ack_timer if ERTM enters in Local Busy or SREJ_SENT
Date: Wed, 12 May 2010 18:59:36 -0300	[thread overview]
Message-ID: <1273701576-17238-1-git-send-email-padovan@profusion.mobi> (raw)
In-Reply-To: <1273633558-10576-6-git-send-email-padovan@profusion.mobi>

The ack_timer is implemation specific, disabling it in such situation
avoids some potencial errors in the ERTM protocol.

Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
Reviewed-by: João Paulo Rechi Vita <jprvita@profusion.mobi>
---
 net/bluetooth/l2cap.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/net/bluetooth/l2cap.c b/net/bluetooth/l2cap.c
index 2192b9c..b061108 100644
--- a/net/bluetooth/l2cap.c
+++ b/net/bluetooth/l2cap.c
@@ -3633,6 +3633,8 @@ static int l2cap_push_rx_skb(struct sock *sk, struct sk_buff *skb, u16 control)
 
 	pi->conn_state |= L2CAP_CONN_RNR_SENT;
 
+	del_timer(&pi->ack_timer);
+
 	queue_work(_busy_wq, &pi->busy_work);
 
 	return err;
@@ -3882,6 +3884,8 @@ static inline int l2cap_data_channel_iframe(struct sock *sk, u16 rx_control, str
 		pi->conn_state |= L2CAP_CONN_SEND_PBIT;
 
 		l2cap_send_srejframe(sk, tx_seq);
+
+		del_timer(&pi->ack_timer);
 	}
 	return 0;
 
-- 
1.6.4.4

      parent reply	other threads:[~2010-05-12 21:59 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-10 17:39 [PATCH 1/2] Bluetooth: Remove max_tx and tx_window modules paramenter from L2CAP Gustavo F. Padovan
2010-05-10 17:39 ` [PATCH 2/2] Bluetooth: Remove L2CAP Extended Features from Kconfig Gustavo F. Padovan
2010-05-12  3:05   ` [l2cap 1/6] Bluetooth: Tweaks to l2cap_send_i_or_rr_or_rnr() flow Gustavo F. Padovan
2010-05-12  3:05     ` [l2cap 2/6] Bluetooth: Fix drop of packets with invalid req_seq/tx_seq Gustavo F. Padovan
2010-05-12  3:05       ` [l2cap 3/6] Bluetooth: Check skb_clone return to avoid NULL dereference Gustavo F. Padovan
2010-05-12  3:05         ` [l2cap 4/6] Bluetooth: Fix ERTM vars increment Gustavo F. Padovan
2010-05-12  3:05           ` [l2cap 5/6] Bluetooth: Check packet FCS earlier Gustavo F. Padovan
2010-05-12  3:05             ` [l2cap 6/6] Bluetooth: Only check SAR bits if frame is I-frame Gustavo F. Padovan
2010-05-12 18:36               ` João Paulo Rechi Vita
2010-05-12 21:59               ` Gustavo F. Padovan [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1273701576-17238-1-git-send-email-padovan@profusion.mobi \
    --to=padovan@profusion.mobi \
    --cc=gustavo@padovan.org \
    --cc=jprvita@profusion.mobi \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=marcel@holtmann.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).