Linux wireless drivers development
 help / color / mirror / Atom feed
From: Johannes Berg <johannes@sipsolutions.net>
To: Arik Nemtsov <arik@wizery.com>
Cc: Eliad Peller <eliad@wizery.com>,
	linux-wireless <linux-wireless@vger.kernel.org>
Subject: Re: mac80211 auth/assoc in multi-channel scenarios
Date: Wed, 27 Jun 2012 09:00:04 +0200	[thread overview]
Message-ID: <1340780404.4485.4.camel@jlt3.sipsolutions.net> (raw)
In-Reply-To: <CA+XVXffxvMxTOL-qM-5CBDwYgd+9_fOMMqbZ3mweAZimtLTuwg@mail.gmail.com> (sfid-20120626_201859_317667_68726DDE)

On Tue, 2012-06-26 at 21:18 +0300, Arik Nemtsov wrote:

> > And now this is just why it won't work even if we start from a clean
> > slate -- I haven't even talked about the backward compatibility aspect,
> > running an old supplicant on a driver that expects a ROC. Remember that
> > the driver need not give the virtual interface *any* channel time on the
> > right channel before needed, so if there's something going on on another
> > channel with multi-channel, that vif would never be able to authenticate
> > with an old supplicant.
> 
> Well that's a given, if we're introducing new features into hostap to
> support multi channel.

No, not really -- I'm going to want to rely on this mechanism even for
the single-channel case in our driver, everything else would be more
like a collection of hacks :-)

> > I could also mention how this is a stupid userspace API, you're now
> > requiring to call one thing before another call is valid, but then the
> > other call is only very briefly valid? If we really wanted ROC, we
> > should embed the time for it into the auth/assoc request, I'd say.
> 
> I think all these examples are because of our different definitions
> for ROC. If ROC is a recommendation, then we just start the ROC before
> starting the connection, and end it after the last EAPOL.
> If channel management is implemented in SW, what you're saying is a
> must. But the FW can abstract these details. Maybe we should do this
> similar to SW/HW scan in mac80211?

Well, I understand your point, but I don't think it's that simple. If,
as you say, we define this to be a recommendation, then we will require
device support for this. You may have that, but with what we're
currently seeing from our firmware I don't think it's possible to
implement it as a recommendation. Even if I could get it somehow
implemented in our device and/or the driver, we'd still be making more
assumptions than I'd want to make for this.

> > Thinking about that though -- what for connect() calls? Whole new can of
> > worms ...
> 
> Not sure what you mean here.

nl80211 connect call, where the driver is managing both auth/assoc,
sometimes even BSS selection.


> > Yes, but it would need this patch and a change to hostapd to add the
> > station when it sends the first auth frame:
> > http://johannes.sipsolutions.net/patches/kernel/all/LATEST/005-nl80211-full-sta-state.patch
> 
> Ah this is useful on another level as well. Today we have a hack in
> the driver to identify the auth-frame reply and add the STA to FW
> temporarily :)

Yes, I know. It's also useful to address a few other races, it just
needs a hostapd implementation. Want to work on it? :-)


johannes


  reply	other threads:[~2012-06-27  7:00 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-25 16:05 mac80211 auth/assoc in multi-channel scenarios Johannes Berg
2012-06-26 10:09 ` Eliad Peller
2012-06-26 10:41   ` Johannes Berg
2012-06-26 11:18     ` Eliad Peller
2012-06-26 11:35       ` Arik Nemtsov
2012-06-26 13:10         ` Johannes Berg
2012-06-26 18:18           ` Arik Nemtsov
2012-06-27  7:00             ` Johannes Berg [this message]
2012-06-27 11:17         ` Johannes Berg
2012-06-27 11:27           ` Arik Nemtsov
2012-06-27 14:38             ` Johannes Berg
2012-06-27 15:20               ` Arik Nemtsov
2012-06-27 15:25                 ` Johannes Berg
2012-06-27 17:05                   ` Arik Nemtsov
2012-06-28  9:33                     ` Johannes Berg
2012-06-28 10:01                       ` Arik Nemtsov
2012-06-28 10:10                         ` Johannes Berg
2012-06-28 12:00                           ` Arik Nemtsov
2012-06-26 12:55       ` Johannes Berg

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=1340780404.4485.4.camel@jlt3.sipsolutions.net \
    --to=johannes@sipsolutions.net \
    --cc=arik@wizery.com \
    --cc=eliad@wizery.com \
    --cc=linux-wireless@vger.kernel.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