ieee80211_it...faces_atomic(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… NAME

okay bestie, this is ieee80211_it...faces_atomic(9) from the Kernel API Manual β€” yes, the page title is cropped like that, we love a mysterious abbreviation era. The actual function is ieee80211_iterate_active_interfaces_atomic β€” the name literally says what it does: iterate active interfaces. Periodt.

✨ SYNOPSIS

       void ieee80211_iterate_active_interfaces_atomic (struct ieee80211_hw *hw
       , u32 iter_flags , void (*iterator)(void *data, u8 *mac, struct
       ieee80211_vif *vif) , void *data );

πŸ’– ARGUMENTS

  • hw β€” the hardware struct of which the interfaces should be iterated over. Like, the main character hardware object you're looping through 🫢
  • iter_flags β€” iteration flags, see enum ieee80211_interface_iteration_flags. Tiny flags, big decisions, iykyk.
  • iterator β€” the iterator function to call, cannot sleep. Not "shouldn't" β€” cannot sleep, bestie. It's atomic hours 😭
  • data β€” first argument of the iterator function. The lil extra thing you pass through.

πŸ¦‹ DESCRIPTION

This function iterates over the interfaces associated with a given hardware that are currently active and calls the callback for them. Slay, active interfaces only β€” no ghosting the inactive ones ✨

This function requires the iterator callback function to be atomic. If that is not desired, use ieee80211_iterate_active_interfaces instead. So if your callback wants a nap, wrong function, bestie β€” the non-atomic version is right there πŸ’…

Does not iterate over a new interface during add_interface. Important caveat, no cap.

⚠️ vibe check: the iterator callback has to be atomic here. The manual is very clear that it cannot sleep β€” do not put sleepy behavior in that callback.

🌈 SEE ALSO

okay the SEE ALSO list here is giving the entire mac80211 extended cinematic universe πŸ’« every single one, no skips:


πŸ’Œ source: ./include/net β€’ date/version: October 2026 β€’ page: ieee80211_it...faces_atomic(9) β€” bye bestie, go iterate responsibly 🫢

πŸ“¦ where this page comes from