4331: Repeated, intermittent connectivity drops while reporting full signal
Lindsay Roberts
k at lindsayr.com
Wed Apr 22 11:19:20 PDT 2015
Hi,
With certain access points, this machine experiences frequent drops in
connectivity while the interface reports good signal.
To clarify: packets no longer flow for long periods at a time, with no
other indication of issues. Often, these periods only last tens of
seconds, but sometimes they last until I rmmod/modprobe b43 (the
quickest cure). I have no such issues using the same hardware with the
... os provided with the hardware, nor do others using the same access
point from many other pieces of hardware experience this issue --
although there have been reports of low signal level from further away.
The only software indication of this state (apart from missing packets)
seems to be a somewhat bogus reported dBm: in the bad states either 0 or
+7 (as reported by "iw dev wlan0 link").
Final note on occurrence: no issues with many other access points,
although under v3.16 or v3.17 the set of access points I had the same
problem with was far higher, somewhere around 50%. Admittedly I have not
bisected the change that solved it for the majority.
// Card:
$ lspci -vvnnkd :4331
03:00.0 Network controller [0280]: Broadcom Corporation BCM4331
802.11a/b/g/n [14e4:4331] (rev 02)
Subsystem: Apple Inc. AirPort Extreme [106b:010f]
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
<TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 256 bytes
Interrupt: pin A routed to IRQ 17
Region 0: Memory at a0500000 (64-bit, non-prefetchable)
[size=16K]
Capabilities: <access denied>
Kernel driver in use: bcma-pci-bridge
Kernel modules: bcma
// Kernel: v3.19 tag with no patches
$ ./scripts/ver_linux
Linux archy 3.19.0-lr-b43 #5 SMP PREEMPT Mon Mar 2 22:38:05 EET 2015
x86_64 GNU/Linux
Gnu C 4.9.2
Gnu make 4.1
binutils 2.25.0
util-linux 2.26.1
mount debug
module-init-tools 19
e2fsprogs 1.42.12
jfsutils 1.1.15
reiserfsprogs 3.6.24
xfsprogs 3.2.2
pcmciautils 018
PPP 2.4.7
Linux C Library Dynamic linker (ldd) 2.21
Linux C++ Library 6.0.20
Procps 3.3.10
Net-tools 2.10-alpha
Kbd 2.0.2
Sh-utils 8.23
wireless-tools 30
Modules Loaded rndis_host cdc_ether usbnet mii b43 ctr ccm fuse
arc4 mac80211 joydev msr cfg80211 ssb rng_core ecb cpufreq_stats pcmcia
coretemp pcmcia_core mousedev iTCO_wdt iTCO_vendor_support intel_rapl
iosf_mbi snd_hda_codec_hdmi x86_pkg_temp_thermal intel_powerclamp
snd_hda_codec_cirrus snd_hda_codec_generic applesmc kvm_intel
input_polldev hwmon kvm btusb bluetooth crct10dif_pclmul crc32_pclmul
crc32c_intel ghash_clmulni_intel aesni_intel uvcvideo aes_x86_64 lrw
gf128mul glue_helper videobuf2_vmalloc ablk_helper videobuf2_memops i915
videobuf2_core snd_hda_intel cryptd v4l2_common snd_hda_controller
videodev bcm5974 evdev rfkill media hid_generic snd_hda_codec microcode
mac_hid drm_kms_helper pcspkr sbs bcma drm snd_hwdep sbshc intel_gtt
snd_pcm i2c_i801 apple_gmux snd_timer i2c_algo_bit i2c_core lpc_ich
apple_bl video snd battery mei_me mei button shpchp soundcore processor
ac sch_fq_codel ext4 crc16 mbcache jbd2 hid_apple usbhid hid sd_mod ahci
libahci libata scsi_mod xhci_pci sdhci_pci sdhci ehci_pci xhci_hcd
led_class ehci_hcd mmc_core usbcore usb_common
// Relevant .config:
CONFIG_B43=m
CONFIG_B43_BCMA=y
CONFIG_B43_SSB=y
CONFIG_B43_BUSES_BCMA_AND_SSB=y
# CONFIG_B43_BUSES_BCMA is not set
# CONFIG_B43_BUSES_SSB is not set
CONFIG_B43_PCI_AUTOSELECT=y
CONFIG_B43_PCICORE_AUTOSELECT=y
CONFIG_B43_PCMCIA=y
CONFIG_B43_SDIO=y
CONFIG_B43_BCMA_PIO=y
CONFIG_B43_PIO=y
CONFIG_B43_PHY_G=y
CONFIG_B43_PHY_N=y
CONFIG_B43_PHY_LP=y
CONFIG_B43_PHY_HT=y
CONFIG_B43_LEDS=y
CONFIG_B43_HWRNG=y
CONFIG_B43_DEBUG=y
CONFIG_CFG80211=m
# CONFIG_NL80211_TESTMODE is not set
CONFIG_CFG80211_DEVELOPER_WARNINGS=y
# CONFIG_CFG80211_REG_DEBUG is not set
CONFIG_CFG80211_DEFAULT_PS=y
CONFIG_CFG80211_DEBUGFS=y
# CONFIG_CFG80211_INTERNAL_REGDB is not set
CONFIG_CFG80211_WEXT=y
CONFIG_LIB80211=m
CONFIG_LIB80211_CRYPT_WEP=m
CONFIG_LIB80211_CRYPT_CCMP=m
CONFIG_LIB80211_CRYPT_TKIP=m
# CONFIG_LIB80211_DEBUG is not set
CONFIG_MAC80211=m
CONFIG_MAC80211_HAS_RC=y
CONFIG_MAC80211_RC_MINSTREL=y
CONFIG_MAC80211_RC_MINSTREL_HT=y
# CONFIG_MAC80211_RC_MINSTREL_VHT is not set
CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
CONFIG_MAC80211_MESH=y
CONFIG_MAC80211_LEDS=y
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_MESSAGE_TRACING is not set
CONFIG_MAC80211_DEBUG_MENU=y
# CONFIG_MAC80211_NOINLINE is not set
CONFIG_MAC80211_VERBOSE_DEBUG=y
# CONFIG_MAC80211_MLME_DEBUG is not set
CONFIG_MAC80211_STA_DEBUG=y
CONFIG_MAC80211_HT_DEBUG=y
# CONFIG_MAC80211_OCB_DEBUG is not set
# CONFIG_MAC80211_IBSS_DEBUG is not set
CONFIG_MAC80211_PS_DEBUG=y
# CONFIG_MAC80211_MPL_DEBUG is not set
# CONFIG_MAC80211_MPATH_DEBUG is not set
# CONFIG_MAC80211_MHWMP_DEBUG is not set
# CONFIG_MAC80211_MESH_SYNC_DEBUG is not set
CONFIG_MAC80211_MESH_CSA_DEBUG=y
# CONFIG_MAC80211_MESH_PS_DEBUG is not set
# CONFIG_MAC80211_TDLS_DEBUG is not set
# CONFIG_MAC80211_DEBUG_COUNTERS is not set
// dmesg fragment:
[Tue Mar 24 14:57:43 2015] cfg80211: Calling CRDA to update world
regulatory domain
[Tue Mar 24 14:57:43 2015] b43-phy41: Broadcom 4331 WLAN found (core
revision 29)
[Tue Mar 24 14:57:43 2015] b43-phy41: Found PHY: Analog 9, Type 7 (HT),
Revision 1
[Tue Mar 24 14:57:43 2015] b43-phy41: Found Radio: Manuf 0x17F, ID
0x2059, Revision 0, Version 1
[Tue Mar 24 14:57:43 2015] b43-phy41 warning: 5 GHz band is unsupported
on this PHY
[Tue Mar 24 14:57:43 2015] Broadcom 43xx driver loaded [ Features: PMNLS
]
[Tue Mar 24 14:57:43 2015] ieee80211 phy41: Selected rate control
algorithm 'minstrel_ht'
[Tue Mar 24 14:57:43 2015] b43-phy41: Loading firmware version 784.2
(2012-08-15 21:35:19)
[Tue Mar 24 14:57:43 2015] b43-phy41 debug: Chip initialized
[Tue Mar 24 14:57:43 2015] b43-phy41 debug: 64-bit DMA initialized
[Tue Mar 24 14:57:43 2015] b43-phy41 debug: QoS enabled
[Tue Mar 24 14:57:43 2015] b43-phy41 debug: Wireless interface started
[Tue Mar 24 14:57:43 2015] b43-phy41 debug: Adding Interface type 2
[Tue Mar 24 14:57:45 2015] wlan0: authenticate with <access-point-mac>
[Tue Mar 24 14:57:45 2015] wlan0: Allocated STA <access-point-mac>
[Tue Mar 24 14:57:45 2015] wlan0: Inserted STA <access-point-mac>
[Tue Mar 24 14:57:45 2015] wlan0: send auth to <access-point-mac> (try
1/3)
[Tue Mar 24 14:57:45 2015] wlan0: authenticated
[Tue Mar 24 14:57:45 2015] wlan0: moving STA <access-point-mac> to state
2
[Tue Mar 24 14:57:45 2015] wlan0: associate with <access-point-mac> (try
1/3)
[Tue Mar 24 14:57:45 2015] wlan0: RX AssocResp from <access-point-mac>
(capab=0x1411 status=0 aid=9)
[Tue Mar 24 14:57:45 2015] wlan0: moving STA <access-point-mac> to state
3
[Tue Mar 24 14:57:45 2015] wlan0: associated
[Tue Mar 24 14:57:45 2015] b43-phy41 debug: Using hardware based
encryption for keyidx: 0, mac: <access-point-mac>
[Tue Mar 24 14:57:45 2015] b43-phy41 debug: Using hardware based
encryption for keyidx: 1, mac: ff:ff:ff:ff:ff:ff
[Tue Mar 24 14:57:45 2015] wlan0: moving STA <access-point-mac> to state
4
[Tue Mar 24 14:58:17 2015] wlan0: deauthenticating from
<access-point-mac> by local choice (Reason: 3=DEAUTH_LEAVING)
[Tue Mar 24 14:58:17 2015] b43-phy41 debug: Disabling hardware based
encryption for keyidx: 0, mac: <access-point-mac>
[Tue Mar 24 14:58:17 2015] wlan0: moving STA <access-point-mac> to state
3
[Tue Mar 24 14:58:17 2015] wlan0: moving STA <access-point-mac> to state
2
[Tue Mar 24 14:58:17 2015] wlan0: moving STA <access-point-mac> to state
1
[Tue Mar 24 14:58:17 2015] wlan0: Removed STA <access-point-mac>
[Tue Mar 24 14:58:17 2015] wlan0: Destroyed STA <access-point-mac>
[Tue Mar 24 14:58:17 2015] wlan0: dropped frame to 00:00:00:00:00:00
(unauthorized port)
[Tue Mar 24 14:58:17 2015] wlan0: dropped frame to 00:00:00:00:00:00
(unauthorized port)
[Tue Mar 24 14:58:18 2015] b43-phy41 debug: Disabling hardware based
encryption for keyidx: 1, mac: ff:ff:ff:ff:ff:ff
[Tue Mar 24 14:58:18 2015] b43-phy41 debug: Removing Interface type 2
[Tue Mar 24 14:58:18 2015] b43-phy41 debug: Wireless interface stopped
[Tue Mar 24 14:58:18 2015] b43-phy41 debug: DMA-64 rx_ring: Used slots
2/256, Failed frames 0/0 = 0.0%, Average tries 0.00
[Tue Mar 24 14:58:18 2015] b43-phy41 debug: DMA-64 tx_ring_AC_BK: Used
slots 0/256, Failed frames 0/0 = 0.0%, Average tries 0.00
[Tue Mar 24 14:58:18 2015] b43-phy41 debug: DMA-64 tx_ring_AC_BE: Used
slots 62/256, Failed frames 6/2138 = 0.2%, Average tries 1.55
[Tue Mar 24 14:58:18 2015] b43-phy41 debug: DMA-64 tx_ring_AC_VI: Used
slots 0/256, Failed frames 0/0 = 0.0%, Average tries 0.00
[Tue Mar 24 14:58:18 2015] b43-phy41 debug: DMA-64 tx_ring_AC_VO: Used
slots 4/256, Failed frames 0/56 = 0.0%, Average tries 1.10
[Tue Mar 24 14:58:18 2015] b43-phy41 debug: DMA-64 tx_ring_mcast: Used
slots 0/256, Failed frames 0/0 = 0.0%, Average tries 0.00
// iw dev wlan0 link for the access point:
Connected to <access-point-mac> (on wlan0)
SSID: <access-point-ssid>
freq: 2412
RX: 1699945 bytes (4604 packets)
TX: 506653 bytes (2820 packets)
signal: -42 dBm
tx bitrate: 24.0 MBit/s
bss flags: short-slot-time
dtim period: 1
beacon int: 100
// Full log. This is 3 way interleaved tail of dmesg, iw dev wlan0 link,
and ping -DO kernel.org. All of /sys/kernel/debug/b43/*/debug_* set to
Y.
plain [2.2MB]:
http://lindsayr.com/logs/b43-4331-frequent-conn-drops-lr.log
gz [64KB]:
http://lindsayr.com/logs/b43-4331-frequent-conn-drops-lr.log.gz
There are correlations between the presumably bogus dBm values and
failed pings visible.
Happy to provide any additional information and/or try other avenues.
Thanks,
Lindsay
More information about the b43-dev
mailing list