Solved wpa_supplicant stuck in ieee80211_waitfor_parent with iwlwifi; cannot be killed

Hi,

On FreeBSD 15.1-RELEASE-p3, my Wi-Fi connection drops repeatedly. When I run doas service netif restart, it hangs while stopping wpa_supplicant:


Stopping wpa_supplicant.
Waiting for PIDS: 22482


Neither
doas /bin/kill -TERM 22482 nor doas /bin/kill -KILL 22482
removes the process. ps reports:


PID PPID STAT WCHAN COMMAND
22482 1 Ds tq_drain /usr/sbin/wpa_supplicant -s -B -i wlan0 -c /etc/wpa_supplicant.conf -D bsd -P /var/run/wpa_supplicant/wlan0.pid



procstat -kk 22482
shows the process waiting in taskqueue_drain via ieee80211_waitfor_parent, ieee80211_ioctl and ifioctl.


The adapter is an Intel Raptor Lake PCH CNVi Wi-Fi device (8086:51f1), using iwlwifi0; wlan0 has iwlwifi0 as its parent interface. dmesg repeatedly reports linuxkpi_ieee80211_beacon_loss, “missed beacons exceeds threshold” and connection losses. wlan0 currently has status: no carrier.


Is there a way to recover the Wi-Fi driver and release the blocked process without rebooting? What additional information would help identify why the taskqueue does not finish?


I can provide the full procstat, pciconf and dmesg output if needed.
 
Ask on freebsd-wirless@freebsd.org mailing list. The iwlwifi(4) driver developer Bjoern A. Zeeb can answer your issue best. He tends to respond to emails asap. Include "[iwlwifi]" in the Subject and in the body all the information your provided here, in particular the FreeBSD branch ( from https://wiki.freebsd.org/WiFi/Iwlwifi#Contact ).

The adapter is an Intel Raptor Lake PCH CNVi Wi-Fi device (8086:51f1)
Better add the output of pciconf -lv | grep -B3 network, showing the wifi adapter.
 
Back
Top