STRUCT IWL_MVM_RXQ_DUP_DATA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct iwl_mvm_rxq_dup_data(9) β€” Kernel API Manual, bestie edition πŸŽ€

okay so we're in the Kernel API Manual and today's main character is struct iwl_mvm_rxq_dup_data(9). yes the title is a mouthful, no you don't have to say it out loud, but like… it's giving "I hold the receipts for every station on every rx queue" and honestly? iconic. 🫢


✨ NAME ✨

struct iwl_mvm_rxq_dup_data β€” per station per rx queue data. that's it. that's the whole vibe. one station, one rx queue, and all the duplicate-detection lore that comes with it πŸ’–


🌸 SYNOPSIS 🌸

struct iwl_mvm_rxq_dup_data {
    __le16 last_seq[IWL_MAX_TID_COUNT + 1];
    u8 last_sub_frame[IWL_MAX_TID_COUNT + 1];
};

look at her. two arrays, both sized IWL_MAX_TID_COUNT + 1 because we do a little off-by-one situation and we're not sorry about it. last_seq is __le16 (little-endian, stay woke about your byte order ngl πŸ”₯) and last_sub_frame is a u8. slay.


πŸ¦‹ Members πŸ¦‹

  • last_seq β€” last sequence per tid for duplicate packet detection. one sequence number for each tid, so we can clock a packet that's trying to sneak in twice. not on our watch, bestie πŸ’…
  • last_sub_frame β€” last subframe packet</... wait, gentle reminder to close your tags πŸ’€
  • last_sub_frame β€” last subframe packet. yeah she just tracks the last subframe packet. no cap, that's the whole description, keep it moving ✨

πŸ‘‘ SEE ALSO πŸ‘‘

okay the cross-reference section is LONG and I respect her for it. all of these live in the kernel file ./drivers/net/wireless/intel/iwlwifi/mvm/sta.h β€” go read it, it's free:

  • DQA - Dynamic Queue Allocation -introduction(9)
  • station table - introduction(9)
  • station table - locking(9)
  • station table - internal stations(9)
  • station table - AP Station in STA mode(9)
  • station table - Drain vs. Flush(9)
  • station table - fw restart(9)
  • AP mode - PS(9)
  • enum iwl_mvm_agg_state(9)
  • struct iwl_mvm_tid_data(9)
  • enum iwl_mvm_rxq_notif_type(9)
  • struct iwl_mvm_internal_rxq_notif(9)
  • struct iwl_mvm_link_sta(9)
  • struct iwl_mvm_sta(9)
  • struct iwl_mvm_int_sta(9)
  • iwl_mvm_sta_send_to_fw(9)
  • struct iwl_mvm_sta_state_ops(9)

like I said. a whole friend group. read them all, they're all connected, iykyk 🌈


reminder bestie: keep those array indices honest, IWL_MAX_TID_COUNT + 1 is not a suggestion 🫢

and that's the page!! πŸ˜­πŸ’– source path got truncated to ./drivers/net/wireless/intel/i..., the date is October 2026, and the manual name is struct iwl_mvm_rxq_dup_data(9) one last time, for the people in the back. periodt. πŸŽ€πŸ¦‹βœ¨

πŸ“¦ where this page comes from