In the Linux kernel, the following vulnerability has been resolved: cfg80211: fix race in netlink owner interface destruction My previous fix here to fix the deadlock left a race where the exact same deadlock (see the original commit referenced below) can still happen if cfg80211_destroy_ifaces() already runs while nl80211_netlink_notify() is still marking some interfaces as nl_owner_dead. The race happens because we have two loops here - first we dev_close() all the netdevs, and then we destroy them. If we also have two netdevs (first one need only be a wdev though) then we can find one during the first iteration, close it, and go to the second iteration -- but then find two, and try to destroy also the one we didn't close yet. Fix this by only iterating once.
https://git.kernel.org/stable/c/f0a6fd1527067da537e9c48390237488719948ed
https://git.kernel.org/stable/c/c979f792a2baf6d0f3419587668a1a6eba46a3d2
https://git.kernel.org/stable/c/241e633cb379c4f332fc1baf2abec95ec840cbeb