CALLING MAC80211 FROM INTERRUPTS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… Calling mac80211 from interrupts πŸ’…

okay so bestie, welcome to the Kernel API Manual page for Calling mac80211 from interrupts β€” yes, the title goes hard, and the rules are short but very serious. 🫢✨

Real talk: only ieee80211_tx_status_irqsafe and ieee80211_rx_irqsafe can be called in hardware interrupt context. That's the entire guest list for that party. πŸ’…

The low-level driver must not call any other functions in hardware interrupt context. nope, not even if it's giving main character energy. πŸ™ˆ

If there is a need for such call, the low-level driver should first ACK the interrupt and perform the IEEE 802.11 code call after this, e.g. from a scheduled workqueue or even tasklet function. lowkey the move is to let the interrupt breathe first. πŸ¦‹

NOTE: If the driver opts to use the _irqsafe functions, it may not also use the non-IRQ-safe functions! this is not a mix-and-match situation, bestie β€” pick a lane. πŸ’€

πŸ”Ž SEE ALSO πŸ”Ž

the whole reference squad, in order, no skips:

mwah πŸ’‹ β€” source/version is ./include/net, date October 2026, and the footer literally says Calling mac8...m interrupts(9). bye bestie, slay your interrupts safely! πŸ’–πŸŽ€

πŸ“¦ where this page comes from