ieee80211_resume_disconnect(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ ieee80211_resume_disconnect ✨

okay bestie, welcome to the Kernel API Manual, section 9, and today's main character is ieee80211_resume_disconnect πŸ’… this page is literally all about breaking up with your AP the moment your machine wakes back up. no cap.


🌸 NAME 🌸

ieee80211_resume_disconnect β€” disconnect from AP after resume


πŸŽ€ SYNOPSIS πŸŽ€

void ieee80211_resume_disconnect (struct ieee80211_vif *vif );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • vif β€” a struct ieee80211_vif pointer, the one you got handed in the add_interface callback. it's giving "you already have this, bestie, just pass it in" ✨

πŸ’œ DESCRIPTION πŸ’œ

so basically: this function instructs mac80211 to disconnect from the AP after resume. simple as that, periodt.

drivers can call this after WoWLAN when they know the connection can't be kept up 😭 β€” for example because keys were used while the device was asleep, but the replay counters or similar can't be retrieved from the device during resume. like... the vibes are off, the session cannot be saved, we're ending it.

heads up queen: due to implementation issues, if the driver uses the reconfiguration functionality during resume, the interface will still be added as associated first during resume and then disconnect normally later. so it's a "break up now, paperwork later" situation πŸ™ˆ

and here's the rule that actually matters, no cap: this function can only be called from the resume callback, and the driver must not be holding any of its own locks while it calls this function β€” or at least not any locks it needs in the key configuration paths (that's the case if it supports HW crypto). holding locks here is not the slay behavior we're going for πŸ’€


🌈 SEE ALSO 🌈

the full extended universe, fr fr β€” every single one of these is part of the lore πŸ‘‘


that's the whole page, bestie, you ate that 🫢 this one ships out of ./include/net, dated October 2026, and it's filed under ieee80211_resume_disconnect(9) β€” go forth and disconnect responsibly πŸ’–πŸ”₯

πŸ“¦ where this page comes from