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

Joseph Lee nugundam at nugundam.best.vwh.net
Fri Feb 20 11:50:04 PST 2009


The following reply was made to PR kern/124753; it has been noted by GNATS.

From: Joseph Lee <nugundam at nugundam.best.vwh.net>
To: bug-followup at FreeBSD.org, nugundam at nugundam.best.vwh.net
Cc:  
Subject: Re: kern/124753: [ieee80211] net80211 discards power-save queue packets
 early
Date: Fri, 20 Feb 2009 11:12:16 -0800

 ath0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 2290
         ether 00:11:95:8d:17:89
         inet6 fe80::211:95ff:fe8d:1789%ath0 prefixlen 64 scopeid 0x2 
         inet 192.168.5.1 netmask 0xffffff00 broadcast 192.168.5.255
         media: IEEE 802.11 Wireless Ethernet autoselect <hostap> (autoselect <hostap>)
         status: associated
         ssid AP channel 1 (2412 Mhz 11g) bssid 00:11:95:8d:17:89
         authmode WPA privacy MIXED deftxkey 2 TKIP 2:128-bit TKIP 3:128-bit
         txpower 31.5 scanvalid 60 bgscan bgscanintvl 300 bgscanidle 250
         roam:rssi11g 7 roam:rate11g 5 protmode CTS wme burst hidessid
         dtimperiod 1
 
 I've noticed with tcpdump that every time the mobile station queries for power-saved packets, there's a couple of arp who-has packets sent out:
 
 10:30:59.744056 arp who-has AP tell mobile
 10:30:59.744104 arp who-has AP tell mobile
 
 Also, packet requests never make it up to the tcpdump level.  Setting bintval to 25 (instead of the default 100), allows packets to be queued longer but still not passed on:
 
 Here's a debug dump from exactly when the WiFi is turned on, on the mobile device with bintval @ 25:
 Feb 20 10:37:01 AP kernel: ath0: [00:18:41:c0:06:54] power save mode on, 1 sta's in ps mode
 Feb 20 10:37:01 AP kernel: ath0: [00:18:41:c0:06:54] save frame with age 0, 1 now queued
 Feb 20 10:37:01 AP kernel: ath0: [00:18:41:c0:06:54] save frame with age 0, 2 now queued
 Feb 20 10:37:01 AP kernel: ath0: [00:18:41:c0:06:54] power save mode off, 0 sta's in ps mode
 Feb 20 10:37:01 AP kernel: ath0: [00:18:41:c0:06:54] flush ps queue, 2 packets queue
 Feb 20 10:37:01 AP kernel: ath0: [00:18:41:c0:06:54] power save mode on, 1 sta's in ps mode
 Feb 20 10:37:01 AP kernel: ath0: [00:18:41:c0:06:54] save frame with age 0, 1 now queued
 Feb 20 10:37:06 AP kernel: ath0: [00:18:41:c0:06:54] save frame with age 0, 2 now queued
 Feb 20 10:37:06 AP kernel: ath0: [00:18:41:c0:06:54] discard frame, age 0
 Feb 20 10:37:06 AP kernel: ath0: [00:18:41:c0:06:54] discard frame, age 0
 Feb 20 10:37:06 AP kernel: ath0: [00:18:41:c0:06:54] discard 2 frames for age
 Feb 20 10:37:07 AP kernel: ath0: [00:18:41:c0:06:54] save frame with age 0, 1 now queued
 Feb 20 10:37:16 AP kernel: ath0: [00:18:41:c0:06:54] save frame with age 0, 2 now queued
 Feb 20 10:37:21 AP kernel: ath0: [00:18:41:c0:06:54] discard frame, age 0
 Feb 20 10:37:21 AP kernel: ath0: [00:18:41:c0:06:54] discard frame, age 0
 Feb 20 10:37:21 AP kernel: ath0: [00:18:41:c0:06:54] discard 2 frames for age
 Feb 20 10:37:22 AP kernel: ath0: [00:18:41:c0:06:54] save frame with age 0, 1 now queued
 Feb 20 10:37:25 AP kernel: ath0: [00:18:41:c0:06:54] save frame with age 0, 2 now queued
 Feb 20 10:37:31 AP kernel: ath0: [00:18:41:c0:06:54] save frame with age 0, 3 now queued
 Feb 20 10:37:36 AP kernel: ath0: [00:18:41:c0:06:54] discard frame, age 0
 Feb 20 10:37:36 AP last message repeated 2 times
 Feb 20 10:37:36 AP kernel: ath0: [00:18:41:c0:06:54] discard 3 frames for age
 Feb 20 10:37:39 AP kernel: ath0: [00:18:41:c0:06:54] save frame with age 0, 1 now queued
 Feb 20 10:37:45 AP kernel: ath0: [00:18:41:c0:06:54] save frame with age 0, 2 now queued
 Feb 20 10:37:51 AP kernel: ath0: [00:18:41:c0:06:54] discard frame, age 0
 Feb 20 10:37:51 AP kernel: ath0: [00:18:41:c0:06:54] discard frame, age 0
 Feb 20 10:37:51 AP kernel: ath0: [00:18:41:c0:06:54] discard 2 frames for age
 
 I do not what the meaning of the arp requests are for.
 
 Thanks.
 Joseph


More information about the freebsd-net mailing list