linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Marcel Holtmann <marcel@holtmann.org>
To: Scott James Remnant <scott@netsplit.com>
Cc: linux-bluetooth@vger.kernel.org, keybuk@chromium.org
Subject: Re: [PATCHv2 0/4] Add support for bonding callbacks and retrying
Date: Mon, 30 Jan 2012 13:51:32 -0800	[thread overview]
Message-ID: <1327960292.1955.177.camel@aeonflux> (raw)
In-Reply-To: <CA+bD78it1S40KTRA+F9QX0KCVG3jDQsS=VdvEjuRdyxUPN4qhw@mail.gmail.com>

Hi Scott,

> > > This adds plugin support for a callback called when bonding completes,
> > > either successfully or fails, or is cancelled. In the success or failure
> > > cases the callback may return TRUE, in which case the bonding is retried
> > > after a short backoff period.
> > >
> > yesterday Johan and talked about this a little bit and I just wanna
> > quickly iterate some small comments here.
> >
> Great!
> 
> > So we should only allow retrying when we initiated the bonding. If the
> > other side started the pairing, then retrying should not even be
> > considered.
> >
> I thought I put a check in for that, but I've just realized that after
> I separated out the autopair and the keyboard pairing stuff, that
> check ended up only in the keyboard pairing side.
> 
> My intent was this entire path should be only when the host initiated
> the bonding, not the client.

to be honest, I did not get further into actually checking the code
itself. I just wanted to ensure we are on the same and expecting how
this is suppose to work ;)

> > We have to also ensure that we do not disconnect the ACL in between the
> > retry attempts. Otherwise some car kits might cancel their pairing
> > procedure and you have to have user interaction to get it back into
> > pairing mode. So if the ACL gets disconnect, then we should just fail
> > and cancel the bonding.
> >
> In my testing, OS X/iOS drop the ACL between retry attempts - so we
> wouldn't be any worse than they are. I'm not sure whether it's even
> possible in bluez to avoid dropping the ACL?

Is Apple doing retried pairing (or auto-pairing) as well?

Strictly speaking the ACL disconnect is host stack triggered. So you
have HCI_Authentication_Requested and you can just execute that again
with the same link. We also do have a ACL disconnect timeout handling of
2 seconds that will allow sockets to re-use the same ACL link. Can you
provide some hcidump traces from your test cases?

Regards

Marcel



  reply	other threads:[~2012-01-30 21:51 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-24 18:47 [PATCHv2 0/4] Add support for bonding callbacks and retrying Scott James Remnant
2012-01-24 18:47 ` [PATCHv2 1/4] Add support for retrying a bonding Scott James Remnant
2012-01-24 18:47 ` [PATCHv2 2/4] plugin: Add bonding callback support for plugins Scott James Remnant
2012-01-24 18:47 ` [PATCHv2 3/4] bonding: retry if callback returns TRUE Scott James Remnant
2012-01-24 18:47 ` [PATCHv2 4/4] bonding: call plugin callback on cancellation Scott James Remnant
2012-01-30 19:41 ` [PATCHv2 0/4] Add support for bonding callbacks and retrying Marcel Holtmann
2012-01-30 21:38   ` Scott James Remnant
2012-01-30 21:51     ` Marcel Holtmann [this message]
2012-01-30 21:57       ` Scott James Remnant
2012-01-30 22:08         ` 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=1327960292.1955.177.camel@aeonflux \
    --to=marcel@holtmann.org \
    --cc=keybuk@chromium.org \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=scott@netsplit.com \
    /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).