cfg80211_stop_link(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay so bestie, welcome to the Kernel API Manual (section 9, yes we're in kernel territory now, hold my iced coffee) β€” today's main character is cfg80211_stop_link, and honestly? she's lowkey iconic.


✨ NAME ✨

cfg80211_stop_link β€” stops an AP/P2P_GO link if link_id is non-negative, or, plot twist, stops all the links on the interface. πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

void cfg80211_stop_link (struct wiphy *wiphy , struct wireless_dev *wdev
                        , int link_id , gfp_t gfp );

yeah she takes four args, no cap, we'll get to each one πŸ’–


🌸 ARGUMENTS 🌸

  • wiphy β€” the wiphy. that's the hardware/wireless-phy situation. your girl is the wiphy. 🧚
  • wdev β€” wireless device. the actual wireless dev we're working with. 🫢
  • link_id β€” a valid link ID, but only in the case of MLO AP/P2P_GO operation. otherwise it's -1. periodt. ✨
  • gfp β€” context flags. you know the vibes, allocation-flavoured. 🌈

πŸ‘‘ DESCRIPTION πŸ‘‘

okay so here's the tea πŸ“:

if link_id is set during MLO operation, we stop only that specified AP/P2P_GO link. so precise. so demure. πŸ’…

but if link_id is set to -1, or if that was the last link being stopped β€” the entire interface gets stopped, exactly as if the AP was stopped, the IBSS/mesh was left, or the STA was disconnected. like, full send. πŸ”₯

ngl, that second part is the big one: one link left standing? the whole interface goes down with it. main character energy, honestly. 😭

(more coming bestie, don't go anywhere πŸ’œ)

✨ SEE ALSO ✨

okay bestie, this is the part where the page just dumps the entire friend group on you 😭 like genuinely, this is a whole contact list. every single one of these is a real page you can go read, all in section (9), so let's get into it β€” no skipping, we're reading the whole roster πŸ’…

still here? 🫢 iconic, keep going, we're not even halfway and honestly the momentum is everything rn ✨

ngl this is giving "reading the whole syllabus on day one" πŸ’€ but we committed, so we finish πŸ”₯

  • 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)
  • struct cfg80211_coalesce(9)
  • 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)

okay the themed sections are coming and honestly they're lowkey the best part, like little friend-group chats inside the giant friend group πŸŽ€

and that's the whole roster πŸ’– every one of those is a real page in section (9), so if something in this one made you go "wait, say more," you already know exactly where to look πŸ¦‹

…annnnd we're back with the rest of the SEE ALSO list, bestie β€” this is the part where the man page just starts listing literally everyone at the party πŸ’… no thoughts, just cross-references. Buckle in πŸŽ€

Fr fr, that's the whole reference list β€” nothing skipped, nothing merged, every single (9) accounted for. If you were looking for the short version: there isn't one, bestie πŸ’€

okay that's a wrap on cfg80211_stop_link(9) 🫢 tysm for reading all three parts, you ate that. this lil beauty lives in ./include/net and it's dated October 2026, so go be iconic with your links and remember β€” stop the link, not the vibe πŸ’–βœ¨πŸŽ€

cfg80211_stop_link(9) β€” see you in the next man page, bestie πŸ˜­πŸ‘‘

πŸ“¦ where this page comes from