Linux bluetooth development
 help / color / mirror / Atom feed
From: Marco Trudel <mtrudel@gmx.ch>
To: bluez-users@lists.sourceforge.net
Subject: Re: [Bluez-users] error on connect
Date: Tue, 19 Apr 2005 18:32:26 +0200	[thread overview]
Message-ID: <4265329A.3030100@gmx.ch> (raw)
In-Reply-To: <1113927187.2469.40.camel@pegasus>

Hello Marcel

Do I get this right:
- The ACL packet that cause the problem is sent before the connection is 
etablished. This is ok and defined in the specification.
- The received dongle is responsible to keep this packet back until the 
connection is etablished and process them then.
- the csr dongles seem to handle this correct.
- the broadcom dongle seem to don't handle this correct. they probably 
suffer a race condition. so they may work or may not work.


regards
Marco


Marcel Holtmann wrote:
> Hi Marco,
> 
> 
>>>>>>It looks like this too early packet now causes the (sensefull) 
>>>>>>"hci_acldata_packet: hci1 ACL packet for unknown connection handle 6" 
>>>>>>kernel error message. The dongle then waits for this acl package and thinks 
>>>>>>this connection is in etablishing phase, so it is blocked.
>>>>>
>>>>>>>From a quick look at the kernel code, it seems that an ACL packet for an
>>>>>unknown connection handle may corrupt the HCI flow control.
>>>>
>>>>I think exactly this happens...
>>>
>>>However even if I fix the HCI flow control problem, the packet is still
>>>lost, because we don't know the connection handle at that time.
>>
>>yes, thats what seems strainge: why is this ACL packet sent that early?
>>that doesn't make sense for me (but I din't develop bluetooth)...
>>In my opinion, it should be sent after the connection is etablished.
> 
> 
> It is not only your opinion. The specification defines it this way. This
> is simply a race condition inside the link manager.



>>>>>>The question now is, who is responsible for holding this packed back? The 
>>>>>>kernel? The dongle itself?
>>>>>
>>>>>The dongle is responsible for that and actually it is only allowed to
>>>>>send data packets after the "Connect Complete" event. Otherwise we don't
>>>>>know its handle and thus can't correctly assign it to a connection.



>>>>but then it's strainge that these ACL packets are always sent before the 
>>>>"connection" successfull packet. or do I right now miss something?
>>>
>>>This must be a bug in the Broadcom link manager firmware. Seems like
>>>BlueZ is "too fast" for these chips.
>>>
>>>If you wanna workaround this problem you must put potential ACL data
>>>packets into a queue and then check this queue after you received the
>>>connection handle.
>>
>>that's pretty ugly. Maybe there's another solution for this. I think 
>>that the problem isnt yet fully understood.
> 
> 
> The problem is clear. The Broadcom link manager has a race condition
> here. It should queue the package until they send the connect complete
> event.
> 
> 
>> > You only saw that on the listing side, right?
>>
>>what do you mean with this?
>>on the sending side - if i remember right - the acl packet is alway sent 
>>before the connection is successfull etablished. I'll check again...
> 
> 
> Please do so, but there should be no problem. We only send any data to
> the chip after we received the connect complete. All previous packages
> are queued.
> 
> Regards
> 
> Marcel
> 
> 
> 
> 
> -------------------------------------------------------
> This SF.Net email is sponsored by: New Crystal Reports XI.
> Version 11 adds new functionality designed to reduce time involved in
> creating, integrating, and deploying reporting solutions. Free runtime info,
> new features, or free trial, at: http://www.businessobjects.com/devxi/728
> _______________________________________________
> Bluez-users mailing list
> Bluez-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/bluez-users
> 
> 



-------------------------------------------------------
This SF.Net email is sponsored by: New Crystal Reports XI.
Version 11 adds new functionality designed to reduce time involved in
creating, integrating, and deploying reporting solutions. Free runtime info,
new features, or free trial, at: http://www.businessobjects.com/devxi/728
_______________________________________________
Bluez-users mailing list
Bluez-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bluez-users

  reply	other threads:[~2005-04-19 16:32 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-15 17:52 [Bluez-users] error on connect Marco Trudel
2005-04-15 23:20 ` Marcel Holtmann
2005-04-16 19:07   ` Marco Trudel
2005-04-16 20:09     ` Marcel Holtmann
2005-04-17  1:33       ` Marco Trudel
2005-04-17  1:46         ` Marcel Holtmann
2005-04-17 10:17           ` Marco Trudel
2005-04-18 18:13             ` Marco Trudel
2005-04-18 18:41               ` Marcel Holtmann
2005-04-19 14:48                 ` Marco Trudel
2005-04-19 15:13                   ` Marcel Holtmann
2005-04-19 15:24                     ` Marco Trudel
2005-04-19 15:47                       ` Marcel Holtmann
2005-04-19 16:00                         ` Marco Trudel
2005-04-19 16:13                           ` Marcel Holtmann
2005-04-19 16:32                             ` Marco Trudel [this message]
2005-04-19 16:51                               ` Marcel Holtmann
2005-04-19 22:11                                 ` Marco Trudel
2005-04-19 22:32                                   ` Marcel Holtmann
2005-04-20 12:17                                     ` Marco Trudel
2005-04-20 12:32                                       ` Marcel Holtmann
2005-04-20 12:44                                         ` Marco Trudel
2005-04-24 12:53                                         ` Marco Trudel
2005-04-24 14:48                                           ` Marcel Holtmann

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=4265329A.3030100@gmx.ch \
    --to=mtrudel@gmx.ch \
    --cc=bluez-users@lists.sourceforge.net \
    /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