Bug#785579: wpa_supplicant: terminates as soon as dbus is disconnected, causing shutdown ordering issues

Facundo Gaich facugaich at gmail.com
Sun May 17 23:33:41 BST 2015


Package: wpasupplicant
Version: 2.3-2
Severity: normal
File: /sbin/wpa_supplicant

Dear Maintainer,

While trying to debug issues related to systemd unmounting NFS shares way
after the network has gone down, I ran into problems trying to stop services
before wpa_supplicant initiated deauth.

Even tying my service (autofs.service) to NetworkManager with After=NetworkManager.service
didn't work, wireless would get disconnected before it could unmount over the net.

This is because wpa_supplicant will shutdown when the dbus is disconnected, as
seen in these logs:

wpa_supplicant[919]: dbus: bus disconnected, terminating
wpa_supplicant[919]: wlan0: Removing interface wlan0
wpa_supplicant[919]: wlan0: Request to deauthenticate - bssid=REDACTED pending_bssid=00:00:00:00:00:00 reason=3 state=COMPLETED
wpa_supplicant[919]: TDLS: Tear down peers
wpa_supplicant[919]: wpa_driver_nl80211_deauthenticate(addr=REDACTED reason_code=3)
wpa_supplicant[919]: wlan0: Event DEAUTH (12) received
wpa_supplicant[919]: wlan0: Deauthentication notification
wpa_supplicant[919]: wlan0:  * reason 3 (locally generated)
wpa_supplicant[919]: Deauthentication frame IE(s) - hexdump(len=0): [NULL]
wpa_supplicant[919]: wlan0: CTRL-EVENT-DISCONNECTED bssid=REDACTED reason=3 locally_generated=1

Since this relationship is not set in the systemd configuration, the only way
to correctly shutdown services that require wireless connection is to
set After=dbus.service in them. Of course, this is not evident in any way, and
it can cause bugs such as #761909.

I'm not sure what the solution would be in this case, I'm cc'ing the systemd
maintainers since it seems to me they have tackled this kind of problems with
wlan before.

Thanks,
Facundo

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.0.1 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages wpasupplicant depends on:
ii  adduser           3.113+nmu3
ii  libc6             2.19-18
ii  libdbus-1-3       1.8.18-1
ii  libnl-3-200       3.2.24-2
ii  libnl-genl-3-200  3.2.24-2
ii  libpcsclite1      1.8.13-1
ii  libreadline6      6.3-8+b3
ii  libssl1.0.0       1.0.2a-1
ii  lsb-base          4.1+Debian13+nmu1

wpasupplicant recommends no packages.

Versions of packages wpasupplicant suggests:
pn  libengine-pkcs11-openssl  <none>
pn  wpagui                    <none>

-- no debconf information



More information about the Pkg-systemd-maintainers mailing list