Search Linux Wireless

Re: mac80211 suspend gotchas

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Friday 20 June 2008 14:46:58 Johannes Berg wrote:
> Hi driver authors :)
> 
> I suggest you guys get together and write some proper suspend support
> for mac80211. We can discuss in Ottawa, but I just wanted to let you
> know that I just ran into this:
> 
> [...]
> [55292.062873] adb: starting probe task...
> [55292.063012] adb: finished probe task...
> [55292.502871] wlan0: No ProbeResp from current AP 00:1a:2a:2c:a2:c5 - assume out of range
> [55292.502883] phy2: Removed STA 00:1a:2a:2c:a2:c5
> [55292.562874] mac80211-phy2: failed to remove key (0, 00:1a:2a:2c:a2:c5) from hardware (-19)
> [55292.563229] phy2: Destroyed STA 00:1a:2a:2c:a2:c5
> [55292.768591] hda: host max PIO4 wanted PIO255(auto-tune) selected PIO4
> [55292.776295] hda: UDMA/100 mode selected
> [55292.777058] ide-cdrom 1.0: resuming
> [55292.779026] hdc: host max PIO4 wanted PIO255(auto-tune) selected PIO4
> [55292.779210] hdc: MWDMA2 mode selected
> [55292.779533] therm_adt746x 8-002e: resuming
> [55292.779548] b43 ssb0:0: resuming
> [55292.779552] b43-phy2 debug: Resuming...
> [...]
> 
> As you can see, mac80211 "noticed" that the AP was "out of range",
> probably because it sent a probe request just before or during
> suspending and the time till now was about an hour.
> 
> We _really_ need to tie mac80211's workqueues and everything to the
> hardware so we don't try to do these things before the driver resumes.

Yeah I agree.

However, currently wpa_supplicant will notice the connection loss right
after resume and scan for APs and connect, for me.

> I don't even know if b43 keeps hardware keys across suspend

It doesn't.

> This is not a hard problem to solve.

>  - suspend does, in this order (callback used):
>     * stop aggregation (ampdu_action)
>     * remove all keys (set_key)
>     * remove all STAs (sta_notify)
>     * remove all interfaces (remove_interface)
>     * stop the hardware (stop)

I think the hardware-stop should probably be done in the driver
suspend routine after the mac80211 notification and not by a mac80211 callback.
Otherwise this is going to get complicated wrt locking.

-- 
Greetings Michael.
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux