STRUCT CFG80211_COALESCE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 struct cfg80211_coalesce(9) 🌸

okay bestie sit DOWN because we're doing a kernel API manual page together and honestly? it's giving ✨linux internals✨. this one lives in the Kernel API Manual, section 9, and the star of the show is struct cfg80211_coalesce β€” literally the packet coalescing settings themselves πŸ’…


✨ NAME ✨

struct cfg80211_coalesce β€” Packet coalescing settings πŸŽ€

like, that's it. that's the whole vibe. packet coalescing. settings. iconic.


πŸ¦‹ SYNOPSIS πŸ¦‹

here's the whole thing, copy it exactly bestie, no typos, we do NOT fumble the struct:

struct cfg80211_coalesce {
    int n_rules;
    struct cfg80211_coalesce_rules rules[];
};

that's your entire struct. two members. lowkey minimal, highkey powerful. periodt πŸ’œ


πŸ’… Members πŸ’…

okay so let's meet the cast 🫢

  • n_rules β€” literally the number of rules. that's the whole job. it counts how many rules there are, no cap πŸ“
  • rules β€” the array of coalesce rules. all of them. the whole squad, lined up in an array 🧚

🌈 Description 🌈

so what IS this thing? this structure defines coalescing settings. that's the description, and honestly it ate β€” short, sweet, to the point. it's giving main character energy in the most understated way possible πŸ’–

basically: this is the struct, and it defines coalescing settings. the settings. for coalescing. obsessed 😭


heads up bestie, this is only part 1 of 3 β€” more coming, don't go anywhere 🌸

πŸ’… SEE ALSO πŸ’…

okay so this is the part of the manpage where it just... says every single name in the cfg80211 group chat πŸ’€ and bestie, the group chat is huge. every one of these is a real page you can pull up with man 9 <thing>, and every one of them is lowkey relevant to struct cfg80211_coalesce. no skips, no cuts β€” here's the whole roster, in order, so you can go read them all and slay your driver work:

and now we hit the big one, the main event, the section that has everything in it:

scanning time!! πŸ” this whole crew is about finding and remembering networks:

  • Scanning and BSS list handling(9)
  • struct cfg80211_ssid(9)
  • struct cfg80211_scan_info(9)
  • struct cfg80211_scan_6ghz_params(9)
  • struct cfg80211_scan_request(9)
  • struct cfg80211_match_set(9)
  • struct cfg80211_sched_scan_plan(9)
  • struct cfg80211_bss_select_adjust(9)
  • struct cfg80211_sched_scan_request(9)
  • enum cfg80211_signal_type(9)
  • struct cfg80211_inform_bss(9)
  • struct cfg80211_bss_ies(9)
  • struct cfg80211_bss(9)
  • ieee80211_bss_get_elem(9)
  • ieee80211_bss_get_ie(9)
  • struct cfg80211_auth_request(9)
  • struct cfg80211_assoc_link(9)
  • struct cfg80211_ml_reconf_req(9)
  • enum cfg80211_assoc_req_flags(9)
  • struct cfg80211_assoc_request(9)
  • struct cfg80211_deauth_request(9)
  • struct cfg80211_disassoc_request(9)
  • struct cfg80211_ibss_params(9)
  • struct cfg80211_bss_selection(9)
  • struct cfg80211_connect_params(9)
  • enum cfg80211_connect_params_changed(9)
  • enum wiphy_params_flags(9)
  • struct cfg80211_pmksa(9)
  • struct cfg80211_pkt_pattern(9)
  • struct cfg80211_wowlan_tcp(9)
  • struct cfg80211_wowlan(9)
  • struct cfg80211_coalesce_rules(9)

(that one's literally the sibling struct of the page you're on, so like... go read it πŸ’–) and the wowlan notification/wakeup fam:

  • struct cfg80211_wowlan_nd_match(9)
  • struct cfg80211_wowlan_nd_info(9)
  • struct cfg80211_wowlan_wakeup(9)
  • struct cfg80211_gtk_rekey_data(9)
  • struct cfg80211_update_ft_ies_params(9)
  • struct cfg80211_mgmt_tx_params(9)
  • struct cfg80211_dscp_exception(9)
  • struct cfg80211_dscp_range(9)
  • struct cfg80211_qos_map(9)

✨ NAN era ✨ β€” Neighbor Awareness Networking, aka the whole neighbor-discovery universe:

  • Neighbor Awareness Networking (NAN)(9)
  • struct cfg80211_nan_band_config(9)
  • struct cfg80211_nan_conf(9)
  • struct cfg80211_nan_channel(9)
  • struct cfg80211_nan_local_sched(9)
  • struct cfg80211_nan_peer_map(9)
  • struct cfg80211_nan_peer_sched(9)
  • enum cfg80211_nan_conf_changes(9)
  • struct cfg80211_nan_func_filter(9)
  • struct cfg80211_nan_func(9)
  • struct cfg80211_pmk_conf(9)
  • struct cfg80211_external_auth_params(9)
  • struct cfg80211_ftm_responder_stats(9)
  • struct cfg80211_pmsr_ftm_result(9)
  • struct cfg80211_pmsr_result(9)
  • struct cfg80211_pmsr_ftm_request_peer(9)
  • struct cfg80211_pmsr_request_peer(9)
  • struct cfg80211_pmsr_request(9)
  • struct cfg80211_update_owe_info(9)
  • struct mgmt_frame_regs(9)
  • struct cfg80211_ops(9)

the wiphy zone 🫢 (this is the long one, hydration check, take a sip of water):

  • enum wiphy_flags(9)
  • struct ieee80211_iface_limit(9)
  • struct ieee80211_iface_combination(9)
  • enum wiphy_wowlan_support_flags(9)
  • struct wiphy_wowlan_support(9)

(^ that's where the coalesce support limits live, so like, super relevant, no cap)

utility gang, the little helpers that just work 🧚:

data path helpers, where packets get their little makeover πŸ’…:

regulatory enforcement infrastructure 🚨 (rules are rules bestie):

then comes the notification/reporting era, aka "hey userspace, something happened" πŸ“£:

and the final stretch, the connect/roam/mgmt event fam πŸŽ€:

yeah the original ends that last one with a stray comma 😭 iconic honestly, we're keeping it, character for character. not me preserving a trailing comma like it's a collectible πŸ† anyway, that's the whole roster β€” go forth and man 9 your way through it, bestie, i believe in you πŸ’œ

...and the list literally does not stop, bestie 😭 the kernel has a see-also for everything. Every single one of these is a real page, so go click through the whole family tree when you're done here 🫢


And that's the whole page, periodt. 🧚 This one came out of ./include/net, dated October 2026, and the page itself is struct cfg80211_coalesce(9) β€” go forth and coalesce responsibly, ily πŸ’–

πŸ“¦ where this page comes from