Re: [PATCH] mac80211: re-upload keys only after telling driver about association

Johannes Berg
2009-04-10T07:29:24Z

[-- Attachment #1: Type: text/plain, Size: 1238 bytes --]

Hi,

> On Tue, 2009-04-07 at 17:55 -0700, Johannes Berg wrote:
> > In the normal WPA or RSN case keys are only configured after
> > associating, so we should do that in that order when resuming
> > as well. It shouldn't really matter since we do not send any
> > data at either point, but iwlwifi prefers it this way and it
> > does seem more natural.
>
> Could you please share the symptom of the problem with iwlwifi without
> this patch?

[this is just a snippet from my other mail -- for the wider audience]

When you have a microcode error, we pretty much take the driver
completely down, and the firmware is of course completely
re-initialised. Now, when mac80211 goes to reconfigure the hardware, it
would, before this patch, do this [simplified, but you can look at the
code]:
1) ->start()
2) ->add_interface()
3) ->sta_notify() [which iwlwifi doesn't use]
4) ->set_key()
5) ->bss_info_changed()

and some more. Now, because iwlwifi ignores step 3, in step 4 it will
complain "station not found" when mac80211 wants to add the pairwise key
for the AP. Reordering 4 and 5 fixes that because iwlwifi adds the
station in bss_info_changed and then the key upload can be successful.

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]