linux/net/bluetooth
Gustavo F. Padovan 844c097242 Bluetooth: Fix spec error in the RemoteBusy Logic
On the receipt of an RR(P=1) under RemoteBusy set to TRUE(on the RECV
state table) we have to call sendIorRRorRNR(F=1) and just after set
RemoteBusy to False. This leads to a freeze in the sending process since
it's not allowed send data with RemoteBusy set to true and no one
call SendPending-I-Frames after set RemoteBusy to false(The last action
for that event).

Actually sendIorRRorRNR() calls SendPending-I-Frames but at that moment
RemoteBusy is still True and we cannot send any frame, after, no one
calls SendPending-I-Frames again and the sending process stops.

The solution here is to set RemoteBusy to false inside
SendPending-I-Frames just before call SendPending-I-Frames. That will
make SendPending-I-Frames able to send frames. This solution is similar
to what RR(P=0)(F=0) on the RECV table and RR(P=1) on the SREJ_SENT
table do.

Actually doesn't make any sense call SendPending-I-Frames if we can send
any frame, i. e., RemoteBusy is True.

Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
2010-05-10 09:28:53 +02:00
..
bnep net: sk_sleep() helper 2010-04-20 16:37:13 -07:00
cmtp net: sk_sleep() helper 2010-04-20 16:37:13 -07:00
hidp net: sk_sleep() helper 2010-04-20 16:37:13 -07:00
rfcomm net: sk_sleep() helper 2010-04-20 16:37:13 -07:00
af_bluetooth.c net: sk_sleep() helper 2010-04-20 16:37:13 -07:00
hci_conn.c Bluetooth: Enter active mode before establishing a SCO link. 2010-02-03 19:10:59 -08:00
hci_core.c Bluetooth: Make hci_send_acl() void 2010-05-10 09:28:52 +02:00
hci_event.c Bluetooth: Add SCO fallback for unsupported feature error 2010-02-27 14:06:00 +01:00
hci_sock.c Bluetooth: Fix out of scope variable access in hci_sock_cmsg() 2010-02-28 00:47:30 -08:00
hci_sysfs.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
Kconfig Bluetooth: Add Kconfig option for L2CAP Extended Features 2010-05-10 09:28:51 +02:00
l2cap.c Bluetooth: Fix spec error in the RemoteBusy Logic 2010-05-10 09:28:53 +02:00
lib.c
Makefile
sco.c Bluetooth: Trivial clean ups to SCO 2010-05-10 09:28:45 +02:00