From: "Jussi Kivilinna" <jussi.kivilinna@mbnet.fi>
To: "Johannes Berg" <johannes@sipsolutions.net>
Cc: linux-wireless@vger.kernel.org, linville@tuxdriver.com,
"Jouni Malinen" <Jouni.Malinen@Atheros.com>
Subject: Re: [PATCH] rndis_wlan: wait association to complete
Date: Thu, 06 Aug 2009 22:34:06 +0300 [thread overview]
Message-ID: <20090806223406.27393zuzztewms74@hayate.sektori.org> (raw)
In-Reply-To: <1249584385.28278.124.camel@johannes.local>
Quoting "Johannes Berg" <johannes@sipsolutions.net>:
> On Thu, 2009-08-06 at 21:17 +0300, Jussi Kivilinna wrote:
>> Fix WPA authentication problems by waiting to association to complete.
>> Otherwise userspace (wpa_supplicant) receives authentication packets before
>> association events from driver.
>
>> + /* If we return now, userspace would get association events too late
>> + * (after receiving first packets from access point). This causes
>> + * WPA authentication to fail.
>
> This is a bit weird, shouldn't you just send the event later then?
>
rndis_wlan bases on rndis_host/usbnet. Problem is that rndis_host uses
polling for rndis_command() results to avoid more complex interrupt
based solution. Because rndis_host and therefore rndis_wlan doesn't
handle interrupts on command channel, rndis_wlan knows about completed
association too late. 'Too late' means here that device starts
receiving packets from AP, which end up ignored because userspace
thinks device isn't assosiated yet (I think).
So this patch adds waiting in set_essid() and active polling for
association completion in worker.
Real fix would probably be to hold on data channel until association
is complete, but that would mean touching usbnet/rndis_host little bit
too much than I'd like to.
next prev parent reply other threads:[~2009-08-06 19:34 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-06 18:17 [PATCH] rndis_wlan: wait association to complete Jussi Kivilinna
2009-08-06 18:46 ` Johannes Berg
2009-08-06 19:34 ` Jussi Kivilinna [this message]
2009-08-07 21:31 ` Dan Williams
2009-08-08 8:33 ` Jussi Kivilinna
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=20090806223406.27393zuzztewms74@hayate.sektori.org \
--to=jussi.kivilinna@mbnet.fi \
--cc=Jouni.Malinen@Atheros.com \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=linville@tuxdriver.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).