kern/124753: net80211 discards power-save queue packets early

Joseph Lee nugundam at gmail.com
Tue Feb 10 13:37:50 PST 2009


I apologize for following up so late on this.  I've only now have time to follow up.

Sepherosa Ziehau wrote:
> On Thu, Jun 19, 2008 at 6:30 PM,  <remko at freebsd.org> wrote:
>> Synopsis: net80211 discards power-save queue packets early
>>
>> Responsible-Changed-From-To: freebsd-i386->freebsd-net
>> Responsible-Changed-By: remko
>> Responsible-Changed-When: Thu Jun 19 10:29:47 UTC 2008
>> Responsible-Changed-Why:
>> reassign to networking team.
>>
>> http://www.freebsd.org/cgi/query-pr.cgi?pr=124753
> 
> In How-To-Repeat, you said:
> "Then associate a recent Windows Mobile 6.1 device to the FreeBSD box
> running hostapd ..."
> 
> In Description, you said:
> "The WM6.1 device recv ps-poll's for packets every 20 seconds ..."
> 
> AFAIK, STA sends ps-poll to AP; AP does not send ps-poll to STA.  Why
> did your windows STA receive ps-poll from freebsd AP?  Did you capture
> it by using 802.11 tap?
> 
> And which freebsd driver were you using?

I'm using the ath wifi driver.  The upgrade to FreeBSD 7.1 has not changed WiFi behavior.

> Your problem looks like:
> - Either freebsd AP did not properly configure TIM in beacons, which
> could be easily found out by using 802.11 tap.  But I highly suspect
> if you were using ath(4), TIM would be misconfigured.

What is tap?

> - Or your windows STA didn't process TIM according to 802.11 standard.

Sam Leffler wrote:
>The PR states the listen interval sent by the station is 3 (beacons) and the beacon >interval is 100TU.  This means the AP is required to buffer unicast frames for only 300TU >which is ~300 ms.  But according to the report the Windows device is polling every 20 >seconds so there's no guarantee any packets will be present (even with the net80211 code >arbitrarily using 4x the list interval specified by the sta).  I find it really hard to >believe a device would poll every 20 secs so something seems wrong in what's >reported/observed.

The device is in its best power-saving mode where it make take time to respond to any packets.  I only have this problem with FreeBSD hostap on the switch from FreeBSD 6 -> 7.  Other APs such as Netgear/Linkgear have no issues, but can be postulated they don't implement PM as FreeBSD currently does.  Also, on this same FreeBSD wifi-ap, no laptops have the same issue.  So, it's isolated between FreeBSD and Windows Mobile.

>Given that defeating the aging logic just pushed the problem elsewhere it sounds like >there's something else wrong which (as you note) probably requires a packet capture to >understand.  I'm pretty sure TIM is handled correctly in RELENG_7 but a packet capture >would help us verify that.

What do I need to do get you guys a packet capture to verify the TIM?

Thanks,
Joseph


More information about the freebsd-net mailing list