First, I'd just like to point out that this question has also been asked at the Arch forums without success. Further context might be obtained from that short thread. I'm posting here to broaden the audience a bit, as it seems not to be specific to Arch (based on another XPS user's response).
I have a Dell XPS 13 (9350) laptop. On a fairly regular basis (around once or twice a day, though at different times and not always after an obvious event e.g. lid closure or suspend) I will lose connection. That is, i3bar will tell me I'm still connected, and that I still have an IP, but no ping response from any server.
In this state, when I attempt to change wireless connection using netctl-auto switch-to, I get
WPA association/authentication failed for interface 'wlp58s0'
(Obviously all the keys are correct as the connections work at other times.) The only thing that seems to cure this state is a reboot, and it always fixes the problem.
During the reboot I often see this message (see below for journalctl output):
brcmfmac: brcmf_msgbuf_tx_ioctl: Failed to reserve space in commonring
Some details:
~$ lspci -vnn | grep -i net
3a:00.0 Network controller [0280]: Broadcom Limited BCM4350 802.11ac Wireless Network Adapter [14e4:43a3] (rev 08)
Subsystem: Dell BCM4350 802.11ac Wireless Network Adapter [1028:0021]
~$ lsmod | grep brcmfmac
brcmfmac 233472 0
brcmutil 16384 1 brcmfmac
cfg80211 516096 1 brcmfmac
mmc_core 122880 2 rtsx_pci_sdmmc,brcmfmac
usbcore 208896 7 uvcvideo,usbhid,cdc_acm,xhci_pci,brcmfmac,btusb,xhci_hcd
~$ pacman -Q linux
linux 4.13.3-1
Fortunately, as I was typing this up it happened again. Here's the output of journalctl | grep brcmfmac since I turned the laptop on (cold start) this morning:
Sep 29 08:04:09 thelonious kernel: usbcore: registered new interface driver brcmfmac
Sep 29 08:04:09 thelonious kernel: brcmfmac 0000:3a:00.0: enabling device (0000 -> 0002)
Sep 29 08:04:11 thelonious kernel: brcmfmac 0000:3a:00.0: Direct firmware load for brcm/brcmfmac4350-pcie.txt failed with error -2
Sep 29 08:04:11 thelonious kernel: brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Oct 22 2015 06:16:26 version 7.35.180.119 (r594535) FWID 01-e791c176
Sep 29 08:04:11 thelonious kernel: brcmfmac 0000:3a:00.0 wlp58s0: renamed from wlan0
Sep 29 08:55:42 thelonious kernel: brcmfmac: brcmf_msgbuf_query_dcmd: Timeout on response for query command
Sep 29 08:55:42 thelonious kernel: brcmfmac: brcmf_cfg80211_dump_station: BRCMF_C_GET_ASSOCLIST unsupported, err=-5
Sep 29 08:55:44 thelonious kernel: brcmfmac: brcmf_msgbuf_query_dcmd: Timeout on response for query command
... snip multiple identical errors ...
Sep 29 08:57:57 thelonious kernel: brcmfmac: brcmf_cfg80211_dump_station: BRCMF_C_GET_ASSOCLIST unsupported, err=-5
Sep 29 08:57:57 thelonious kernel: brcmfmac: brcmf_msgbuf_tx_ioctl: Failed to reserve space in commonring
Sep 29 08:57:57 thelonious kernel: brcmfmac: brcmf_cfg80211_dump_station: BRCMF_C_GET_ASSOCLIST unsupported, err=-12
Sep 29 08:58:00 thelonious kernel: brcmfmac: brcmf_msgbuf_tx_ioctl: Failed to reserve space in commonring
... snip multiple identical errors ...
Sep 29 08:58:20 thelonious kernel: brcmfmac: brcmf_msgbuf_tx_ioctl: Failed to reserve space in commonring
Sep 29 08:58:20 thelonious kernel: brcmfmac: brcmf_cfg80211_dump_station: BRCMF_C_GET_ASSOCLIST unsupported, err=-12
Following such a failure of the kernel module, simply restarting the service does not help:
~$ sudo systemctl restart netctl-auto@wlp57s0.service
A dependency job for netctl-auto@wlp57s0.service failed. See 'journalctl -xe' for details.
~$ sudo journalctl -xe
Sep 30 10:51:58 thelonious sudo[3626]: basie : TTY=pts/2 ; PWD=/home/basie ; USER=root ; COMMAND=/usr/bin/systemctl restart netctl-auto@wlp5
Sep 30 10:51:58 thelonious sudo[3626]: pam_unix(sudo:session): session opened for user root by (uid=0)
Sep 30 10:51:58 thelonious systemd[1]: Unnecessary job for sys-subsystem-net-devices-wlp57s0.device was removed.
-- Subject: Unit sys-subsystem-net-devices-wlp57s0.device has failed
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit sys-subsystem-net-devices-wlp57s0.device has failed.
--
-- The result is collected.
Sep 30 10:51:58 thelonious systemd[1]: netctl-auto@wlp57s0.service: Bound to unit sys-subsystem-net-devices-wlp57s0.device, but unit isn't acti
Sep 30 10:51:58 thelonious systemd[1]: Dependency failed for Automatic wireless network connection using netctl profiles.
-- Subject: Unit netctl-auto@wlp57s0.service has failed
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit netctl-auto@wlp57s0.service has failed.
--
-- The result is dependency.
Sep 30 10:51:58 thelonious systemd[1]: netctl-auto@wlp57s0.service: Job netctl-auto@wlp57s0.service/start failed with result 'dependency'.
Sep 30 10:51:58 thelonious sudo[3626]: pam_unix(sudo:session): session closed for user root
Sep 30 10:52:00 thelonious kernel: brcmfmac: brcmf_msgbuf_tx_ioctl: Failed to reserve space in commonring
Sep 30 10:52:00 thelonious kernel: brcmfmac: brcmf_cfg80211_dump_station: BRCMF_C_GET_ASSOCLIST unsupported, err=-12
...snip identical messages...
Sep 30 10:52:05 thelonious kernel: brcmfmac: brcmf_cfg80211_dump_station: BRCMF_C_GET_ASSOCLIST unsupported, err=-12
Sep 30 10:52:10 thelonious kernel: net_ratelimit: 2 callbacks suppressed
Sep 30 10:52:10 thelonious kernel: brcmfmac: brcmf_msgbuf_tx_ioctl: Failed to reserve space in commonring
...etc...
So, two questions:
- What further steps can I take to diagnose this? Obviously the module is receiving a command it doesn't support (I note this patch from 2015 https://patchwork.kernel.org/patch/7354871/) but I'm not sure where to go from here.
- What is it about rebooting that solves the issue that I could try from a terminal to narrow my search?