linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* mac80211 power management breakage?(was Re: Commit 741b4fbc44 (mac80211: fix TX sequence numbers) breaks rtl8187)
@ 2008-07-26 13:26 Hin-Tak Leung
  2008-07-29  9:42 ` Kalle Valo
  0 siblings, 1 reply; 3+ messages in thread
From: Hin-Tak Leung @ 2008-07-26 13:26 UTC (permalink / raw)
  To: Herton Ronaldo Krzesinski; +Cc: Larry Finger, Pavel Roskin, wireless

On Fri, Jul 25, 2008 at 5:36 PM, Herton Ronaldo Krzesinski
<herton@mandriva.com.br> wrote:
<snipped>
> The patch didn't help, but I reached a set of commands where I'm always able
> to reproduce the problem, I found out that is the order of commands that
> makes the issue happen here:
>
> [1] /sbin/ip link set dev wlan0 down
> [2] /sbin/ip link set dev wlan0 up
> [3] /sbin/iwconfig wlan0 power on
> [4] /sbin/iwconfig wlan0 essid any
> [5] /sbin/iwconfig wlan0 power on
> [6] /sbin/iwconfig wlan0 essid <my AP>
> [7] /sbin/iwconfig wlan0 key open <my key>
>
> With these commands the interface doesn't associate with AP.
> If I remove only command 3, I still can't associate.
> If I remove only command 4, no problems.
> If I remove only command 5, no problems.
>
> So it seems there is a bug when trying to do a "power on" after "essid <key>"
> command, are you able to reproduce this too?

- I have added linux-wireless back to CC:, since I have reproduced the
problem you saw,
exactly as you described. (you mean "power on after essid <any>" is
problematic, I think)

I have also had a look at the code and while I don't understand most
of it, I thought maybe
I have a guess of how adding power management wext hooks can break association.
What the power management hooks + enabling power management does, is
to buffer for up to
STA_MAX_TX_BUFFER frames of certain types; also, if a iwconfig essid
<any> is issued before
iwconfig essid <some_ap>, the <any> result is cached for look-up, I
think. so the 3 situations you out-lined are this:

-use a lot of frames to find any APs, (power saving on, start
buffering)  send a small number of frames to
associate with one among the known APs but these frames are buffered,
so no association

- (power saving on, start buffering), use a lot of frames to find any
APs, a few more to associate to one.

- (power saving on, start buffering), doesn't know any APs, so use a
lot of frames to find a particular one.

Does this make sense, or am I talking nonsense? In any case, there is
a MAC80211_VERBOSE_PS_DEBUG
in net/mac80211/tx.c,  which should be relevant.

Hin-Tak

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-07-30  1:06 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-26 13:26 mac80211 power management breakage?(was Re: Commit 741b4fbc44 (mac80211: fix TX sequence numbers) breaks rtl8187) Hin-Tak Leung
2008-07-29  9:42 ` Kalle Valo
2008-07-30  1:06   ` Hin-Tak Leung

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).