FS#60831 - Update to Kernel 4.19.2-arch1-1-ARCH breaks iwd
Attached to Project:
Arch Linux
Opened by Mike Cloaked (mcloaked) - Friday, 16 November 2018, 22:42 GMT
Last edited by Doug Newgard (Scimmia) - Monday, 19 November 2018, 04:02 GMT
Opened by Mike Cloaked (mcloaked) - Friday, 16 November 2018, 22:42 GMT
Last edited by Doug Newgard (Scimmia) - Monday, 19 November 2018, 04:02 GMT
|
Details
Description: wireless connections were working fine with iwd
until the kernel was updated to Kernel
4.19.2-arch1-1-ARCH
After updating the kernel there is no wireless connection after reboot. The iwd status shows as # systemctl status iwd ● iwd.service - Wireless service Loaded: loaded (/usr/lib/systemd/system/iwd.service; enabled; vendor preset: disabled) Active: active (running) since Fri 2018-11-16 22:14:23 GMT; 11s ago Main PID: 1116 (iwd) Tasks: 1 (limit: 4915) Memory: 520.0K CGroup: /system.slice/iwd.service └─1116 /usr/lib/iwd/iwd Nov 16 22:14:23 lenovo1 iwd[1116]: CONFIG_PKCS8_PRIVATE_KEY_PARSER Nov 16 22:14:23 lenovo1 iwd[1116]: Wireless daemon version 0.12 Nov 16 22:14:23 lenovo1 iwd[1116]: Skipping optional configuration file /etc/iwd/main.conf Nov 16 22:14:23 lenovo1 systemd[1]: Started Wireless service. Nov 16 22:14:23 lenovo1 iwd[1116]: Wiphy: 0, Name: phy0 Nov 16 22:14:23 lenovo1 iwd[1116]: Bands: 2.4 GHz Nov 16 22:14:23 lenovo1 iwd[1116]: Ciphers: CCMP TKIP Nov 16 22:14:23 lenovo1 iwd[1116]: Supported iftypes: ad-hoc station ap Nov 16 22:14:23 lenovo1 iwd[1116]: No ControlPortOverNL80211 setting, defaulting to True Nov 16 22:14:27 lenovo1 iwd[1116]: 4-Way handshake failed for ifindex: 3, reason: 15 The journal log contains: Nov 16 22:06:45 lenovo1 iwd[408]: No asymmetric key support found. Nov 16 22:06:45 lenovo1 iwd[408]: TLS based WPA-Enterprise authentication methods will not function. Nov 16 22:06:45 lenovo1 iwd[408]: Kernel 4.20+ is required for this feature. Nov 16 22:06:45 lenovo1 iwd[408]: The following options are missing in the kernel: Nov 16 22:06:45 lenovo1 iwd[408]: CONFIG_ASYMMETRIC_KEY_TYPE Nov 16 22:06:45 lenovo1 iwd[408]: CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE Nov 16 22:06:45 lenovo1 iwd[408]: CONFIG_PKCS7_MESSAGE_PARSER Nov 16 22:06:45 lenovo1 iwd[408]: CONFIG_X509_CERTIFICATE_PARSER Nov 16 22:06:45 lenovo1 iwd[408]: CONFIG_PKCS8_PRIVATE_KEY_PARSER Nov 16 22:06:45 lenovo1 iwd[408]: Wireless daemon version 0.12 Nov 16 22:06:45 lenovo1 iwd[408]: Skipping optional configuration file /etc/iwd/main.conf Nov 16 22:06:45 lenovo1 systemd[1]: Started Wireless service. Nov 16 22:06:45 lenovo1 audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=iwd comm="sys> Nov 16 22:06:45 lenovo1 iwd[408]: Wiphy: 0, Name: phy0 Nov 16 22:06:45 lenovo1 iwd[408]: Bands: 2.4 GHz Nov 16 22:06:45 lenovo1 iwd[408]: Ciphers: CCMP TKIP Nov 16 22:06:45 lenovo1 iwd[408]: Supported iftypes: ad-hoc station ap Nov 16 22:06:45 lenovo1 iwd[408]: No ControlPortOverNL80211 setting, defaulting to True Stopping the iwd service and starting wpa_supplicant gets back a working wireless interface Additional info: * package version(s) $ pacman -Q iwd iwd 0.12-1 * config and/or log files etc. Steps to reproduce: Update kernel to 4.19.2-arch1 and reboot. Previously working wireless connection using iwd fails. |
This task depends upon
upgraded linux (4.19.1.arch1-1 -> 4.19.2.arch1-1)
[root@lenovo1 ~]# journalctl -b -3|grep iwd
Nov 16 13:52:07 lenovo1 iwd[417]: No asymmetric key support found.
Nov 16 13:52:07 lenovo1 iwd[417]: TLS based WPA-Enterprise authentication methods will not function.
Nov 16 13:52:07 lenovo1 iwd[417]: Kernel 4.20+ is required for this feature.
Nov 16 13:52:07 lenovo1 iwd[417]: The following options are missing in the kernel:
Nov 16 13:52:07 lenovo1 iwd[417]: CONFIG_ASYMMETRIC_KEY_TYPE
Nov 16 13:52:07 lenovo1 iwd[417]: CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE
Nov 16 13:52:07 lenovo1 iwd[417]: CONFIG_PKCS7_MESSAGE_PARSER
Nov 16 13:52:07 lenovo1 iwd[417]: CONFIG_X509_CERTIFICATE_PARSER
Nov 16 13:52:07 lenovo1 iwd[417]: CONFIG_PKCS8_PRIVATE_KEY_PARSER
Nov 16 13:52:07 lenovo1 iwd[417]: Wireless daemon version 0.12
Nov 16 13:52:07 lenovo1 iwd[417]: Skipping optional configuration file /etc/iwd/main.conf
Nov 16 13:52:07 lenovo1 audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=iwd comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Nov 16 13:52:07 lenovo1 iwd[417]: Wiphy: 0, Name: phy0
Nov 16 13:52:07 lenovo1 iwd[417]: Bands: 2.4 GHz
Nov 16 13:52:07 lenovo1 iwd[417]: Ciphers: CCMP TKIP
Nov 16 13:52:07 lenovo1 iwd[417]: Supported iftypes: ad-hoc station ap
Nov 16 13:52:07 lenovo1 iwd[417]: No ControlPortOverNL80211 setting, defaulting to True
Nov 16 22:04:54 lenovo1 iwd[417]: D-Bus disconnected, quitting...
Nov 16 22:04:54 lenovo1 iwd[417]: Removing scan context for ifindex: 3
Nov 16 22:04:54 lenovo1 iwd[417]: MLME notification is missing ifindex attribute
Nov 16 22:04:55 lenovo1 audit[1]: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=iwd comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
and equivalent for current boot
[root@lenovo1 ~]# journalctl -b |grep iwd
Nov 17 08:40:05 lenovo1 iwd[440]: No asymmetric key support found.
Nov 17 08:40:05 lenovo1 iwd[440]: TLS based WPA-Enterprise authentication methods will not function.
Nov 17 08:40:05 lenovo1 iwd[440]: Kernel 4.20+ is required for this feature.
Nov 17 08:40:05 lenovo1 iwd[440]: The following options are missing in the kernel:
Nov 17 08:40:05 lenovo1 iwd[440]: CONFIG_ASYMMETRIC_KEY_TYPE
Nov 17 08:40:05 lenovo1 iwd[440]: CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE
Nov 17 08:40:05 lenovo1 iwd[440]: CONFIG_PKCS7_MESSAGE_PARSER
Nov 17 08:40:05 lenovo1 iwd[440]: CONFIG_X509_CERTIFICATE_PARSER
Nov 17 08:40:05 lenovo1 iwd[440]: CONFIG_PKCS8_PRIVATE_KEY_PARSER
Nov 17 08:40:05 lenovo1 iwd[440]: Wireless daemon version 0.12
Nov 17 08:40:05 lenovo1 iwd[440]: Skipping optional configuration file /etc/iwd/main.conf
Nov 17 08:40:05 lenovo1 audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=iwd comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Nov 17 08:40:06 lenovo1 iwd[440]: Wiphy: 0, Name: phy0
Nov 17 08:40:06 lenovo1 iwd[440]: Bands: 2.4 GHz
Nov 17 08:40:06 lenovo1 iwd[440]: Ciphers: CCMP TKIP
Nov 17 08:40:06 lenovo1 iwd[440]: Supported iftypes: ad-hoc station ap
Nov 17 08:40:06 lenovo1 iwd[440]: No ControlPortOverNL80211 setting, defaulting to True
Nov 17 08:40:09 lenovo1 iwd[440]: 4-Way handshake failed for ifindex: 3, reason: 15
I will also attach the full journal log for both cases shortly
[mike@lenovo1 iwd-fail]$ grep systemd-networkd journal-4.19.1.txt
Nov 16 13:52:07 lenovo1 systemd-networkd[515]: Enumeration completed
Nov 16 13:52:07 lenovo1 systemd-networkd[515]: enp3s0: Interface name change detected, enp3s0 has been renamed to eth0.
Nov 16 13:52:07 lenovo1 systemd-networkd[515]: eth0: Interface name change detected, eth0 has been renamed to enp3s0.
Nov 16 13:52:07 lenovo1 systemd-networkd[515]: wlp4s0: Interface name change detected, wlp4s0 has been renamed to wlan0.
Nov 16 13:52:07 lenovo1 systemd-networkd[515]: wlan0: Interface name change detected, wlan0 has been renamed to wlp4s0.
Nov 16 13:52:07 lenovo1 audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-networkd comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Nov 16 13:52:07 lenovo1 systemd-networkd[515]: enp3s0: Link is not managed by us
Nov 16 13:52:07 lenovo1 systemd-networkd[515]: lo: Link is not managed by us
Nov 16 13:52:07 lenovo1 systemd-networkd[515]: lo: Link is not managed by us
Nov 16 13:52:09 lenovo1 systemd-networkd[515]: wlp4s0: Gained carrier
Nov 16 13:52:09 lenovo1 systemd-networkd[515]: wlp4s0: DHCPv4 address 10.0.0.94/24 via 10.0.0.135
Nov 16 13:52:10 lenovo1 systemd-networkd[515]: wlp4s0: Gained IPv6LL
Nov 16 13:52:22 lenovo1 systemd-networkd[515]: wlp4s0: Configured
Nov 16 22:04:54 lenovo1 systemd-networkd[515]: wlp4s0: Lost carrier
Nov 16 22:04:54 lenovo1 systemd-networkd[515]: wlp4s0: DHCP lease lost
Nov 16 22:04:54 lenovo1 systemd-networkd[515]: Could not emit changed OperationalState: Transport endpoint is not connected
Nov 16 22:04:55 lenovo1 audit[1]: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-networkd comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
[mike@lenovo1 iwd-fail]$ grep systemd-networkd journal-4.19.2.txt
Nov 17 08:40:05 lenovo1 systemd-networkd[514]: Enumeration completed
Nov 17 08:40:05 lenovo1 systemd-networkd[514]: enp3s0: Interface name change detected, enp3s0 has been renamed to eth0.
Nov 17 08:40:05 lenovo1 systemd-networkd[514]: eth0: Interface name change detected, eth0 has been renamed to enp3s0.
Nov 17 08:40:05 lenovo1 systemd-networkd[514]: wlp4s0: Interface name change detected, wlp4s0 has been renamed to wlan0.
Nov 17 08:40:05 lenovo1 audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-networkd comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Nov 17 08:40:05 lenovo1 systemd-networkd[514]: wlan0: Interface name change detected, wlan0 has been renamed to wlp4s0.
Nov 17 08:40:05 lenovo1 systemd-networkd[514]: enp3s0: Link is not managed by us
Nov 17 08:40:05 lenovo1 systemd-networkd[514]: lo: Link is not managed by us
Nov 17 08:40:05 lenovo1 systemd-networkd[514]: lo: Link is not managed by us
So for 4.19.2 systemd-networkd does not get the wireless connection for wlp4s0
Here's where failure occurs:
Nov 17 08:40:09 lenovo1 iwd[440]: 4-Way handshake failed for ifindex: 3, reason: 15
Nov 17 08:40:09 lenovo1 kernel: wlp4s0: deauthenticating from 9c:3d:cf:85:91:a9 by local choice (Reason: 15=4WAY_HANDSHAKE_TIMEOUT)
I would suggest bisecting 4.19.1-4.19.2 or testing 4.20-rc3.
I would suggest waiting for 4.19.3 but I can not see any related fixes currently in it https://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git/tree/queue-4.19 .
I have never used iwd before but I just tried - since I use network manager I followed the wiki to create
/etc/NetworkManager/conf.d/wifi_backend.conf
with
[device]
wifi.backend=iwd
Then restarted NetworkManager - it failed - though this looks different to above - so unclear if its an NM vs iwd thing.
I didn't try older versions of iwd.
Going back to default backend (wpa_supplicant) all is fine.
Nov 17 11:19:08 wiz NetworkManager[4788]: <info> [1542471548.3022] device (lo): carrier: link connected
Nov 17 11:19:08 wiz NetworkManager[4788]: <info> [1542471548.3024] manager: (lo): new Generic device (/org/freedesktop/NetworkManager/Devices/1)
Nov 17 11:19:08 wiz NetworkManager[4788]: <info> [1542471548.3038] manager: (wlp2s0): new 802.11 WiFi device (/org/freedesktop/NetworkManager/Devices/2)
Nov 17 11:19:08 wiz dbus-daemon[667]: [system] Activating via systemd: service name='net.connman.iwd' unit='iwd.service' requested by ':1.2669' (uid=0 pid=4788 comm="/usr/bin/NetworkManager --no-daemon ")
Nov 17 11:19:08 wiz NetworkManager[4788]: <info> [1542471548.3049] device (wlp2s0): state change: unmanaged -> unavailable (reason 'managed', sys-iface-state: 'external')
Nov 17 11:19:08 wiz systemd[1]: Starting Wireless service...
Nov 17 11:19:08 wiz NetworkManager[4788]: <info> [1542471548.3137] ovsdb: Could not connect: No such file or directory
Nov 17 11:19:08 wiz NetworkManager[4788]: <info> [1542471548.3182] manager: startup complete
Nov 17 11:19:08 wiz nm-dispatcher[4794]: req:2 'connectivity-change': new request (0 scripts)
Nov 17 11:19:08 wiz nm-dispatcher[4794]: req:2 'connectivity-change': completed: no scripts
Nov 17 11:19:08 wiz iwd[4798]: Wireless daemon version 0.12
Nov 17 11:19:08 wiz iwd[4798]: Skipping optional configuration file /etc/iwd/main.conf
Nov 17 11:19:08 wiz iwd[4798]: Unable to open /var/lib/iwd: No such file or directory
Nov 17 11:19:08 wiz iwd[4798]: rfkill id 2 can't be matched to a wiphy
Nov 17 11:19:08 wiz dbus-daemon[667]: [system] Successfully activated service 'net.connman.iwd'
Nov 17 11:19:08 wiz systemd[1]: Started Wireless service.
Nov 17 11:19:08 wiz audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=iwd comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Nov 17 11:19:08 wiz iwd[4798]: Wiphy: 0, Name: phy0
Nov 17 11:19:08 wiz iwd[4798]: Bands: 2.4 GHz 5 GHz
Nov 17 11:19:08 wiz iwd[4798]: Ciphers: CCMP TKIP BIP
Nov 17 11:19:08 wiz iwd[4798]: Supported iftypes: ad-hoc station ap
Nov 17 11:19:08 wiz iwd[4798]: Unable to parse interface information
Nov 17 11:19:08 wiz iwd[4798]: No ControlPortOverNL80211 setting, defaulting to True
Nov 17 11:19:08 wiz iwd[4798]: Could not register frame watch type 00d0: -114
Nov 17 11:19:08 wiz kernel: audit: type=1130 audit(1542471548.375:247): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=iwd comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Nov 17 11:19:08 wiz kernel: wlp2s0: deauthenticating from cc:40:d0:0d:xx:xx by local choice (Reason: 3=DEAUTH_LEAVING)
Nov 17 11:19:08 wiz wpa_supplicant[714]: wlp2s0: CTRL-EVENT-DISCONNECTED bssid=cc:40:d0:0d:xx:xx reason=3 locally_generated=1
Nov 17 11:19:08 wiz iwd[4798]: Could not register frame watch type 00d0: -114
Nov 17 11:19:08 wiz iwd[4798]: Could not register frame watch type 00d0: -114
Nov 17 11:19:08 wiz kernel: IPv6: ADDRCONF(NETDEV_UP): wlp2s0: link is not ready
https://www.reddit.com/r/archlinux/comments/9g9a3o/iwd_occasionally_fails_to_reconnect_after_boot/
[iwd]# device list
Devices
--------------------------------------------------------------------------------
Name Address Powered Adapter Mode
--------------------------------------------------------------------------------
wlp4s0 0c:8b:fd:bd:27:bb on phy0 station
So it sees the device OK.
Also the command # station wlp4s0 get-networks lists local networks in the normal way.
However trying to connect to my own local ssid:
[iwd]# station wlp4s0 connect mdc-guest
Type the network passphrase for mdc-guest psk.
Passphrase: ********************
Operation failed
The password was checked on two further attempts and it fails each time.
The associated journal entries when trying this contained each time:
Nov 17 16:49:58 lenovo1 kernel: wlp4s0: authenticate with 9c:3d:cf:85:91:a9
Nov 17 16:49:58 lenovo1 kernel: wlp4s0: send auth to 9c:3d:cf:85:91:a9 (try 1/3)
Nov 17 16:49:58 lenovo1 kernel: wlp4s0: authenticated
Nov 17 16:49:58 lenovo1 kernel: wlp4s0: associate with 9c:3d:cf:85:91:a9 (try 1/3)
Nov 17 16:49:58 lenovo1 kernel: wlp4s0: RX AssocResp from 9c:3d:cf:85:91:a9 (capab=0x411 status=0 aid=1)
Nov 17 16:49:58 lenovo1 kernel: wlp4s0: AP has invalid WMM params (AIFSN=1 for ACI 2), will use 2
Nov 17 16:49:58 lenovo1 kernel: wlp4s0: AP has invalid WMM params (AIFSN=1 for ACI 3), will use 2
Nov 17 16:49:58 lenovo1 kernel: wlp4s0: associated
Nov 17 16:49:58 lenovo1 kernel: wlp4s0: Limiting TX power to 20 (20 - 0) dBm as advertised by 9c:3d:cf:85:91:a9
Nov 17 16:50:00 lenovo1 iwd[2361]: 4-Way handshake failed for ifindex: 3, reason: 15
Nov 17 16:50:00 lenovo1 kernel: wlp4s0: deauthenticating from 9c:3d:cf:85:91:a9 by local choice (Reason: 15=4WAY_H
Again closing down iwd and starting wpa_supplicant brings up the wireless connection without any problems.
[2018-11-16 13:50] [ALPM] upgraded iwd (0.11-1 -> 0.12-1)
I downgraded back to 0.11-1 and tried again with the 4.19.2 kernel but iwd had the same issue - so it was not the iwd update but the kernel update that is the underlying reason iwd no longer connects due to the Reason: 15=4WAY_HANDSHAKE_TIMEOUT as per the comment by Jake above.
https://lists.01.org/pipermail/iwd/2018-November/005145.html
Nov 18 18:41:07 lenovo2 kernel: wlp8s0: AP has invalid WMM params (AIFSN=1 for ACI 2), will use 2
This surprised me - so I tried to log into the wireless router but found I could not access its embedded management web interface - it is a Netgear R8000. The router was apparently running as normal according to the LEDs on the panel. However pulling the power on the R8000 and rebooting the router then allowed my laptop to connect normally using iwd with the 4.19.2 kernel.
So apologies for the time taken to find the unusual solution but with the router operating abnormally and yet showing a normal LED display this was not suspected as the cause - and the router was connecting normally to all other wireless devices in the LAN including tablets and phones.
Edit: I have done some searching on the Netgear forums and discovered that many users found disconnects with the version of the firmware that was running in my R8000 with rebooting the router as the only solution. New firmware was released 11 days ago and I have now updated the router with this new firmware which will hopefully be more stable!
This is now resolved