Unloading/reloading an atheroswifi device ends in vm_page_fault KDL

Description

Due to some problems with the updated wifi stack (see #14282 and #14349), sometimes wpa_supplicant or net_server crashes and then the network list becomes empty. Reopening the Network preferences window, selecting the wifi adapter and clicking on "Disable" then "Enable", sometimes makes the card available again. But nearly one time out of two or three attemps, it triggers a vm_page_fault KDL instead (see attached).

OK, so, ​ath_reset_grablock just calls "pause", which is defined as a macro ​here. ​_pause then calls ​tsleep, also a macro, which calls msleep but with a NULL mutex. ​msleep apparently tries to unconditionally lock or unlock the mutex, which seems pretty strange. I need to look at what FreeBSD does here.

OK, we seem to be getting somewhere. I couldn't trigger the KDL anymore, no matter how hard I tried! This appears to be fixed (unfortunately it still leaves me with #14349, see my update there). Let me now if there's any additional steps I can take to verify further.