kern/148322: Triggering atheros wifi beacon misses in hostap mode under no radio traffic load

Adrian Chadd adrian at FreeBSD.org
Fri Jul 2 16:40:05 UTC 2010


>Number:         148322
>Category:       kern
>Synopsis:       Triggering atheros wifi beacon misses in hostap mode under no radio traffic load
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Jul 02 16:40:04 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Adrian Chadd
>Release:        FreeBSD wap1 9.0-CURRENT
>Organization:
>Environment:

* ubiquiti routerstation pro
* ubiquiti SR-2 card, AR5213A based
* running -current from local USB hard disk

FreeBSD wap1 9.0-CURRENT FreeBSD 9.0-CURRENT #5: Fri Jul  2 23:33:56 WST 2010     adrian at pcbsd-3114:/data/freebsd/mips/head/obj-mip
s/mips.mips/data/freebsd/mips/head/src/sys/AR71XX  mips

>Description:

Reproducing "missed x consecutive beacon" debug messages by doing SPI flash IO.

This isn't -necessarily- a radio stability/signal strength issue (but I'll
re-test that comment when I acquire something spectrum analyzer-y) but it
could indicate some other problem. The flash IO is through the AR71XX SPI bus.
It shouldn't interfere with the beacon transmission, right?

>How-To-Repeat:

* setup interface in hostap mode:

rc.conf:
wlans_ath0="wlan0"
create_args_wlan0="wlanmode hostap mode 11g country AU txpower 2 bgscan"
ifconfig_wlan0="ssid cacheboy_test_1 mode 11g channel 6 txpower 2 up"

* create hostapd config to make sure neighbors don't steal wifi:

interface=wlan0
driver=bsd
ssid=cacheboy_test_1
wpa=3
wpa_key_mgmt=WPA-PSK
wpa_passphrase=XXXX
wpa_pairwise=CCMP TKIP

* create bridge group just for testing normal traffic:

rc.conf:
cloned_interfaces="bridge0"
ifconfig_bridge0="addm wlan0 stp wlan0 addm wlan1 stp wlan1 addm arge0 stp arge0 up"

* enable beacon debug messages (assuming the kernel has been compiled with atheros debugging):

# sysctl dev.ath.0.debug=0x80

* dd from flash:
wap1# dd if=/dev/redboot/kernel of=/dev/null bs=64k
ath0: ath_beacon_proc: missed 1 consecutive beacons
ath0: ath_beacon_proc: resume beacon xmit after 1 misses
ath0: ath_beacon_proc: missed 1 consecutive beacons
ath0: ath_beacon_proc: resume beacon xmit after 1 misses
<etc, etc>

>Fix:

Weirdly enough, tweaking the HAL DMA/software beacon timings quieten those messages:

# sysctl hw.ath.hal.dma_brt=1000
# sysctl hw.ath.hal.sw_brt=3000
# ifconfig wlan0 down
#ifconfig wlan0 up
# dd if=/dev/redboot/kernel of=/dev/null bs=64k

I haven't tried passing any traffic through the AP yet with these HAL settings.

100/300 also works. Dropping it back to the default of 2/10 sees the missed beacon messages.
>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list