ieee80211_purge_tx_queue(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ¦‹ ieee80211_purge_tx_queue β€” like, the manual page bestie πŸ’…

okay so you're reading the Kernel API Manual (ieee80211_purge_tx_queue(9)) and honestly? this one's short but mighty, so let's get into it 🫢


✨ NAME ✨

ieee80211_purge_tx_queue β€” purge TX skb queue πŸ’€ (yes, that's the whole vibe check: it yeets the transmit skb queue)


🌸 SYNOPSIS 🌸

void ieee80211_purge_tx_queue (struct ieee80211_hw *hw , struct
sk_buff_head *skbs );

look at that signature. clean. iconic. no return value because it just does the thing and leaves. main character energy fr fr πŸ‘‘


πŸŽ€ ARGUMENTS πŸŽ€

  • hw β€” the hardware πŸ–₯️ (literally the hardware, that's the whole description, slay)
  • skbs β€” the skbs 🧚 (yep, the skbs. the socket buffers. the little guys)

πŸ’– DESCRIPTION πŸ’–

so what it does: it frees a set of transmit skbs ✨

when do you use it? use this function when the device is going to stop, but some transmit skbs without TX status are still queued 😭 like, cleanup era. closing time. last call. get those buffers outta here.

⚠️ BIG WARNING, bestie, listen up: this function does not take the list lock. that means the caller must hold the relevant locks to use it. no cap. if you skip the locking you're on your own and it's giving undefined behaviour πŸ’€ lock it up first, then purge. periodt.

πŸ”₯ SEE ALSO πŸ”₯

okay this list is long β€” like, genuinely a whole friend group β€” but every single one of them gets a shoutout because I don't skip anyone πŸ’œ


and that's the whole page, bestie πŸŽ€ you're now officially educated on purging TX skb queues. go forth, hold your locks, and slay ✨

mwah πŸ’‹ β€” this little number lives in ./include/net, dated October 2026, and it's part of the Kernel API Manual fam. iykyk πŸ¦‹

πŸ“¦ where this page comes from