Monday, 20 May 2013

Linux bcm43224 wifi adapter slows down a couple minutes after boot

Linux bcm43224 wifi adapter slows down a couple minutes after boot

I just installed Ubuntu on my mid 2012 MacBook Air. Everything worked out of the box, but the wifi is showing some weird behavior.
When I first login it's really fast, loading google.com is near instant, and browsing in general feels at least as smooth as it did on Mac OS. However, after a couple minutes the connection slows down dramatically, sometimes it takes over 5s to load google.com, a simple reboot fixes the problem for another couple minutes.
Specs:
Wifi: 02:00.0 Network controller: Broadcom Corporation BCM43224 802.11a/b/g/n (rev 01)
Driver: open-source brcmsmac driver
Kernel: Linux wega 3.8.0-21-generic #32-Ubuntu SMP Tue May 14 22:16:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
Distro: Ubuntu 13.04 (uptodate)
I tried a number of things, none of which actually helped
Use proprietary sta driver from broadcom
Installed firmware into /lib/firmware/brcms (which, as far as I can tell from logs, does not get loaded at all)
Switch router to only use 2.4 OR 5 GHz
Set router to only use a OR g OR n
Set router to use AES encryption only
Turned off power management on the adapter
Set regulatory region to the correct value (NL) on both router and laptop
Disable ipv6
Nothing seems to help, the slowdown always occurs. I did notice that the latency (ping google.com) stays roughly the same (around 9ms).
Below is some more information that might be of use.
$ lspci -nnk | grep -iA2 net
02:00.0 Network controller [0280]: Broadcom Corporation BCM43224 802.11a/b/g/n [14e4:4353] (rev 01)
    Subsystem: Apple Inc. Device [106b:00e9]
    Kernel driver in use: bcma-pci-bridge

$ rfkill list
0: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no
1: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no

$ lsmod
Module                  Size  Used by
dm_crypt               22820  1
arc4                   12615  2
brcmsmac              550698  0
coretemp               13355  0
kvm_intel             132891  0
parport_pc             28152  0
kvm                   443165  1 kvm_intel
ppdev                  17073  0
cordic                 12574  1 brcmsmac
brcmutil               14755  1 brcmsmac
mac80211              606457  1 brcmsmac
cfg80211              510937  2 brcmsmac,mac80211
bnep                   18036  2
rfcomm                 42641  12
joydev                 17377  0
applesmc               19353  0
input_polldev          13896  1 applesmc
snd_hda_codec_hdmi     36913  1
microcode              22881  0
snd_hda_codec_cirrus    23829  1
nls_iso8859_1          12713  1
uvcvideo               80847  0
btusb                  22474  0
snd_hda_intel          39619  3
videobuf2_vmalloc      13056  1 uvcvideo
snd_hda_codec         136453  3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_cirrus
bcm5974                17347  0
bluetooth             228619  22 bnep,btusb,rfcomm
snd_hwdep              13602  1 snd_hda_codec
lpc_ich                17061  0
videobuf2_memops       13202  1 videobuf2_vmalloc
videobuf2_core         40513  1 uvcvideo
videodev              129260  2 uvcvideo,videobuf2_core
bcma                   41051  1 brcmsmac
snd_pcm                97451  3 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel
snd_page_alloc

No comments:

Post a Comment