All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Arend van Spriel" <arend@broadcom.com>
To: "Jouni Malinen" <j@w1.fi>
Cc: "Undekari, Sunil Dutt" <usdutt@qti.qualcomm.com>,
	"Johannes Berg" <johannes@sipsolutions.net>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
	"Dan Williams" <dcbw@redhat.com>
Subject: Re: [PATCH] cfg80211: Introduce critical protocol indication for p2p connection.
Date: Sat, 2 Nov 2013 11:37:16 +0100	[thread overview]
Message-ID: <5274D5DC.1090508@broadcom.com> (raw)
In-Reply-To: <20131102073319.GA3507@w1.fi>

On 11/02/13 08:33, Jouni Malinen wrote:
> On Fri, Nov 01, 2013 at 02:07:16PM +0100, Arend van Spriel wrote:
>> On 11/01/2013 12:25 PM, Undekari, Sunil Dutt wrote:
>>> The host driver / firmware performs (initiates) a scan on the STA interface in the process of finding a better BSS to roam. This scan is offloaded to the driver / firmware for a better roam experience.
>>> This scans would definitely affect the p2p connection triggered by the supplicant.
>>> Thus, I was suggesting a way to extend the already existing critical protocol indications to also include p2p protocol/connections, so that drivers can defer the scan's (any off channel operations for that matter) on any other interface during this period.
>>
>> I got that. What I meant to say is that you can defer the roaming
>> related scans when cfg80211 does a .add_virtual_intf() call to the
>> driver and recommence upon .del_virtual_intf(). I guess this
>> effectively disables roaming, right?
>
> That sounds quite excessive. The case here is a multi-channel
> concurrency capable device which has a station connection and
> wpa_supplicant is about to go through P2P group formation. I see no
> reason to disable roaming, but it would sound useful to avoid doing the
> background scans for that at the exact time of the group formation
> (couple of seconds in most cases).

This is why I was asking for a more detailed usage scenario. Sunil only 
mentioned the term "P2P connection" which seemed to coarse for this API. 
So if we are talking about P2P group formation it makes sense.

> Currently, there is no way for wpa_supplicant to clearly indicate to the
> driver that it is about to run through number of quick operations
> (offchannel Action frame exchange for GO Negotiation, single channel
> scan, WPS association + EAPOL exchange, data connection association +
> 4-way handshake). The driver can guess that this is happening (or could
> use really ugly hacks to see what Action frames are exchanged and
> determine next likely operation based on that) and as such, would not
> know how to configure the firmware to avoid background scans for the
> station interface during this full sequence.

I wanted this API primarily to avoid drivers doing that kind of hacks so 
I agree. It was intended to avoid extra latencies during IP connection 
setup, which is probably happening right after the group formation. So I 
recommend the connection managers to use this API. I think Dan Williams 
did some initial implementation testing in NetworkManager and had some 
concerns. I forgot about them completely so not sure how that ended.

> While the background scan should in most cases not completely break the
> process even with inconvenient timing (or well, hitting one in middle of
> the three frame GO Negotiation would have potential to time out that
> exchange), it would be nice if this common sequence could be optimized
> to avoid extra latencies and to be more robust in general since there is
> a 15 second timeout for group formation and quite a bit shorter timeouts
> in practice for the individual operations within the sequence.

I guess the decision is for Johannes to take, but I see your point.

Regards,
Arend


  reply	other threads:[~2013-11-02 10:37 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-31 14:40 [PATCH] cfg80211: Introduce critical protocol indication for p2p connection Sunil Dutt Undekari
2013-10-31 14:43 ` Johannes Berg
2013-10-31 15:22   ` Undekari, Sunil Dutt
2013-10-31 15:25     ` Johannes Berg
2013-10-31 15:54       ` Undekari, Sunil Dutt
2013-10-31 17:42         ` Arend van Spriel
2013-11-01 11:25           ` Undekari, Sunil Dutt
2013-11-01 13:07             ` Arend van Spriel
2013-11-02  7:33               ` Jouni Malinen
2013-11-02 10:37                 ` Arend van Spriel [this message]
2013-11-08 15:06                   ` Undekari, Sunil Dutt
2013-11-11 16:26                   ` Johannes Berg
2013-11-11 17:20                     ` Dan Williams
     [not found]                       ` <52811F6E.3010100@broadcom.com>
2013-11-11 19:04                         ` Dan Williams

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=5274D5DC.1090508@broadcom.com \
    --to=arend@broadcom.com \
    --cc=dcbw@redhat.com \
    --cc=j@w1.fi \
    --cc=johannes@sipsolutions.net \
    --cc=linux-wireless@vger.kernel.org \
    --cc=usdutt@qti.qualcomm.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.