CVE-2026-98331: wifi: mac80211: unlist vifs when their netdev is unregistered
In the Linux kernel, the following vulnerability has been resolved:
wifi: mac80211: unlist vifs when their netdev is unregistered
mac80211 only removes vifs from the local->interfaces list when an interface is removed via ieee80211ifremove(), before it unregisters the netdev. However, it's possible for a netdev to be unregistered without going through that: When the netns that holds the wiphy is destroyed, the wiphy is supposed to move to the initns, but that can run into allocation failures.
Then, mac80211 has an interface listed that doesn't exist, and will eventually hit
BUG: failure at net/wireless/core.h:141/wiphytordev()! ... cfg80211unregisterwdev+0x24/0x36a [cfg80211] cfg80211unregisterwdev+0x15/0x1d [cfg80211] ieee80211removeinterfaces+0x1ff/0x257 [mac80211] ieee80211unregisterhw+0x73/0x1d1 [mac80211] mac80211hwsimdelradio+0x114/0x166 [mac80211hwsim]
Remove the interface from the list in ->ndouninit if it's still around to avoid this.