bond_3ad_unbind_slave(9)
π bond_3ad_unbind_slave(9) β the Kernel API Manual glow-up π
okay so real talk, bestie, you're in the Kernel API Manual and the page you opened is bond_3ad_unbind_slave(9). yes it's a mouthful. no you may not abbreviate it in front of the kernel. let's get into it β¨
πΈ NAME πΈ
bond_3ad_unbind_slave β deinitialize a slave's port π
like, we're breaking up with a port. it's giving closure arc.
β¨ SYNOPSIS β¨
void bond_3ad_unbind_slave (struct slave *slave );
that's it. that's the whole vibe. one pointer, zero return value, all business π«Ά
π¦ ARGUMENTS π¦
slaveβ theslavestruct to work on. this is the little guy you're operating on, so likeβ¦ be normal about it π
π₯ DESCRIPTION π₯
okay so here's the tea β β and I mean the literal procedure, no cap:
Search for the aggregator that is related to this port, remove the aggregator, and assign another aggregator for other port related to it (if any), and remove the port.
so: π find the agg β ποΈ yeet the agg β π hand any other ports that were tied to it over to a different aggregator (only if any exist, don't come for me) β π«₯ and then the port itself is gone. main character removed from the group chat. periodt.
not me doing surgery on network bonding internals before lunch π but fr fr that's the whole function.
π SEE ALSO π
literally the entire bond_3ad cinematic universe, bestie. Kernel file ./drivers/net/bonding/bond_3ad.c and then:
__get_bond_by_port(9), __get_first_agg(9), __agg_has_partner(9), __disable_distributing_port(9), __enable_collecting_port(9), __disable_port(9), __enable_port(9), __port_move_to_attached_state(9), __port_is_collecting_distributing(9), __get_agg_selection_mode(9), __check_agg_selection_timer(9), __get_link_speed(9), __get_duplex(9), __ad_timer_to_ticks(9), __choose_matched(9), __record_pdu(9), __record_default(9), __update_selected(9), __update_default_selected(9), __update_ntt(9), __agg_ports_are_ready(9), __set_agg_ports_ready(9), __get_agg_bandwidth(9), __get_active_agg(9), __update_lacpdu_from_port(9), ad_lacpdu_send(9), ad_marker_send(9), ad_mux_machine(9), ad_rx_machine(9), ad_churn_machine(9), ad_tx_machine(9), ad_periodic_machine(9), ad_port_selection_logic(9), ad_agg_selection_logic(9), ad_clear_agg(9), ad_initialize_agg(9), ad_initialize_port(9), ad_enable_collecting(9), ad_disable_distributing(9), ad_enable_collecting_distributing(9), ad_disable_collecting_distributing(9), ad_marker_info_received(9), ad_marker_response_received(9), bond_3ad_initiate_agg_selection(9), bond_3ad_initialize(9), bond_3ad_bind_slave(9), bond_3ad_update_ad_actor_settings(9), bond_agg_timer_advance(9), bond_3ad_state_machine_handler(9), bond_3ad_rx_indication(9), ad_update_actor_keys(9), bond_3ad_adapter_speed_duplex_changed(9), bond_3ad_handle_link_change(9), bond_3ad_set_carrier(9), __bond_3ad_get_active_agg_info(9), bond_3ad_update_lacp_rate(9), bond_3ad_update_lacp_active(9)
like I said. the whole universe. go read 'em, iykyk ππ
mwah π this page came straight out of ./drivers/net/bonding in October 2026 β that's the source and the date, and yes I'm putting it in the sign-off because it ate. go forth and unbind responsibly, bestie π«ΆπΈ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms