Re: [iwlwifi] wpa_supplicant stuck in ieee80211_waitfor_parent on 15.1-RELEASE-p3

From: Bjoern A. Zeeb <bz_at_FreeBSD.org>
Date: Wed, 23 Sep 2026 18:52:01 UTC
On Wed, 23 Sep 2026, Walter Harder wrote:

> Hi,
>
> I was referred here from the FreeBSD forum. On FreeBSD 15.1-RELEASE-p3, my Intel Wi-Fi connection repeatedly drops. When I run doas service netif restart, it hangs at:
>
> Stopping wpa_supplicant.
> Waiting for PIDS: 22482
>
> Neither SIGTERM nor SIGKILL removes the process. ps shows:
>
> 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 taskqueue_drain called from ieee80211_waitfor_parent, via ieee80211_ioctl and ifioctl.
>
> The Wi-Fi adapter is detected as:
>
> iwlwifi0@pci0:0:20:3: class=0x028000 rev=0x01 hdr=0x00 vendor=0x8086 device=0x51f1 subvendor=0x8086 subdevice=0x0094
> vendor = 'Intel Corporation'
> device = 'Raptor Lake PCH CNVi WiFi'
> class = network
>
> wlan0 has iwlwifi0 as its parent and currently reports status: no carrier. Before the hang, dmesg repeatedly reports linuxkpi_ieee80211_beacon_loss, “missed beacons exceeds threshold” and connection losses.
>
> Is there a way to recover the driver and release the blocked taskqueue without rebooting? Is this a known issue on the 15.1 release branch? I can provide the complete command outputs if useful.

No, I don't think you can recover;  if it was a debug kernel deadlock resolution would kick in after a while and panic.

I believe this is https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298369 ?


I haven't had quite as much time as I had hoped to finish and get the fix into main (and stable/15) yet.  Will be another bit.  Sorry.

/bz

-- 
For there shall arise false Christs, and false prophets, and shall shew
great signs and wonders; insomuch that, if it were possible, they shall
deceive the very elect. Behold, I have told you before. [Mat. 24:24-25]