0

I run Debian 9 on an old MacBook. I strongly suspect there is some hardware problem on the WiFi-card, because it drops connection relatively often on Linux. On macOS, it connects very slowly and the speed is low.

Anyway, it works okay most of the time. I don't mind the connection dropping every now and then were it not for one thing: sometimes (on Debian) when the connection drops, the entire computer freezes. I can't move the pointer, the keyboard doesn't work and nothing on the screen moves.

It always happens like this: first I notice I can't open a webpage. Seconds later, network-manager reports I have no WiFi connection. Seconds after that, the entire freeze happens.

Some details about my install:

  • Debian 9, with all the latest updates
  • Kernel 4.9.0-6-amd64
  • The package firmware-b43-installer for WiFi-drivers
  • Wifi-card: Broadcom Limited BCM4322 802.11a/b/g/n Wireless LAN Controller (rev 01)

What can I do to prevent to entire computer to freeze just because the WiFi-card is unstable?

Edit The parts from kern.log that I think are relevant

May 10 06:07:25 debian kernel: [ 1611.012694] wlan0: disconnect from AP AA:BB:CC:DD:EE:FF for new auth to AA:BB:CC:DD:EE:FF
May 10 06:07:26 debian kernel: [ 1611.052358] wlan0: authenticate with AA:BB:CC:DD:EE:FF
May 10 06:07:28 debian kernel: [ 1613.780112] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:31 debian kernel: [ 1616.192155] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:31 debian kernel: [ 1616.208350] b43-phy0: Radio hardware status changed to DISABLED
May 10 06:07:31 debian kernel: [ 1616.208369] b43-phy0 ERROR: MAC not suspended
May 10 06:07:33 debian kernel: [ 1618.624064] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:36 debian kernel: [ 1621.064103] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:36 debian kernel: [ 1621.084206] b43-phy0 ERROR: MAC not suspended
May 10 06:07:38 debian kernel: [ 1623.520049] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:40 debian kernel: [ 1625.948076] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:40 debian kernel: [ 1625.964048] b43-phy0: Radio turned on by software
May 10 06:07:40 debian kernel: [ 1625.964051] b43-phy0: The hardware RF-kill button still turns the radio physically off. Press the button to turn it on.
May 10 06:07:43 debian kernel: [ 1628.424055] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:45 debian kernel: [ 1630.848080] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:45 debian kernel: [ 1630.864375] wlan0: send auth to AA:BB:CC:DD:EE:FF (try 1/3)
May 10 06:07:48 debian kernel: [ 1633.328056] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:50 debian kernel: [ 1635.780065] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:53 debian kernel: [ 1638.22May 10 06:08:50 debian kernel: [    0.000000] microcode: microcode updated early to revision 0xa0b, date = 2010-09-28
May 10 06:08:50 debian kernel: [    0.000000] Linux version 4.9.0-6-amd64 (debian-kernel@lists.debian.org) (gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1) ) #1 SMP Debian 4.$

I believe the last line is the first entry from when I restarted the computer.

Same from syslog

May 10 06:07:25 debian kernel: [ 1611.012694] wlan0: disconnect from AP AA:BB:CC:DD:EE:FF for new auth to AA:BB:CC:DD:EE:FF
May 10 06:07:26 debian kernel: [ 1611.052358] wlan0: authenticate with AA:BB:CC:DD:EE:FF
May 10 06:07:28 debian kernel: [ 1613.780112] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:31 debian kernel: [ 1616.192155] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:31 debian kernel: [ 1616.208350] b43-phy0: Radio hardware status changed to DISABLED
May 10 06:07:31 debian kernel: [ 1616.208369] b43-phy0 ERROR: MAC not suspended
May 10 06:07:31 debian systemd[1]: Starting Load/Save RF Kill Switch Status...
May 10 06:07:31 debian NetworkManager[383]: <info>  [1525925251.1954] manager: WiFi now disabled by radio killswitch
May 10 06:07:31 debian NetworkManager[383]: <info>  [1525925251.1955] device (wlan0): state change: activated -> unavailable (reason 'none') [100 20 0]
May 10 06:07:31 debian NetworkManager[383]: <info>  [1525925251.1966] dhcp4 (wlan0): canceled DHCP transaction, DHCP client pid 1944
May 10 06:07:31 debian NetworkManager[383]: <info>  [1525925251.1966] dhcp4 (wlan0): state changed bound -> done
May 10 06:07:31 debian systemd[1]: Started Load/Save RF Kill Switch Status.
May 10 06:07:33 debian kernel: [ 1618.624064] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:36 debian kernel: [ 1621.064103] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:36 debian kernel: [ 1621.084206] b43-phy0 ERROR: MAC not suspended
May 10 06:07:38 debian kernel: [ 1623.520049] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:40 debian kernel: [ 1625.948076] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:40 debian kernel: [ 1625.964048] b43-phy0: Radio turned on by software
May 10 06:07:40 debian kernel: [ 1625.964051] b43-phy0: The hardware RF-kill button still turns the radio physically off. Press the button to turn it on.
May 10 06:07:43 debian kernel: [ 1628.424055] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:45 debian kernel: [ 1630.848080] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:45 debian wpa_supplicant[421]: rfkill: WLAN hard blocked
May 10 06:07:45 debian kernel: [ 1630.864375] wlan0: send auth to 80:2a:a8:c4:52:c4 (try 1/3)
May 10 06:07:48 debian kernel: [ 1633.328056] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:50 debian kernel: [ 1635.780065] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:53 debian kernel: [ 1638.224047] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:55 debian kernel: [ 1640.668035] b43-phy0 ERROR: RF sequence status timeout
May 10 06:07:55 debian kernel: [ 1640.808041] b43-phy0 ERROR: DMA RX reset timed out
May 10 06:07:56 debian kernel: [ 1641.052135] b43-phy0 ERROR: DMA TX reset timed out
May 10 06:07:56 debian kernel: [ 1641.300147] b43-phy0 ERROR: DMA TX reset timed out
May 10 06:07:56 debian kernel: [ 1641.544068] b43-phy0 ERRMay 10 06:08:50 debian systemd[1]: Starting Flush Journal to Persistent Storage...
May 10 06:08:50 debian systemd[1]: Started Set the console keyboard layout.
  • First, look at your logs. – Ignacio Vazquez-Abrams May 10 '18 at 5:03
  • @IgnacioVazquez-Abrams I have now added syslog and kern.log – arcus_mannen May 10 '18 at 6:48
0

There were constant Wifi (nasty) problems/bugs in the first few years/models after the switch to Intel, and Wifi OS/Xs drivers have built-in workarounds for those problems that might not be present in open source drivers.

Try whatever to boot that with whichever last version of OS/X that supports and see if there is any firmware upgrade still pending.

The bluetooth interface also is in the chipset, try to disable it for Wifi to operate better.

As for the Wifi transmission strength, defining a non-US country might also allow you to boost the signal level.

Lastly, a last ditch alternative might be using an external WiFi adapter.

  • Nevertheless, you have this error: The hardware RF-kill button still turns the radio physically off. (?). Has I do not real having a physical button to turn off wifi, either you were using an hackintosh and that is not a Mac, or something else is wrong, and this answer might be complementary to a better answer someone comes up with. – Rui F Ribeiro May 10 '18 at 7:49
  • 1
    I turned off bluetooth with rfkill: freezes happend anyway. It's a real (hehe) MacBook5,2 from 2009. If there are bugs in the wifi-card that may very well explain my problems, but how can I make it so that just because the wifi-card/driver goes haywire, the whole system doesn't freeze? I don't really care if the wifi is unstable as long as it doesn't freeze the system. I still want wifi sometimes though, so I can't disable it completely. – arcus_mannen May 10 '18 at 10:27
  • Oh, and I don't intend to use it booted in macOS, so if it's slow there doesn't matter to me. I will still try your suggestions – arcus_mannen May 10 '18 at 10:30
  • @arcus_mannen the rfkill explains the error then. The kernel module is running in privileged mode, it it crashes, there is not much it can be done, unfortunately. Those bugs were particularly irritating, for a long time we were not even able to use 2.4GHz properly in my house with a couple of machines, and it prompted me to buy a 5GHz router. It is is that bad, consider using an external Wifi stick as I did for a good while. – Rui F Ribeiro May 10 '18 at 11:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.