ice_bridge_setlink(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay so bestie, welcome to the Kernel API Manual ✨ this one is called ice_bridge_setlink and honestly? it's giving "I set the vibe of the whole switch" energy πŸ’… let's get into it


πŸŽ€ SYNOPSIS πŸŽ€

int ice_bridge_setlink (struct net_device *dev , struct nlmsghdr *nlh ,
       u16 flags , struct netlink_ext_ack *extack );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • dev β€” the netdev being configured, aka the main character we're tuning up πŸ’–
  • nlh β€” the RTNL message, no cap that's literally what it is
  • flags β€” bridge setlink flags, the little settings knobs bestie
  • extack β€” netlink extended ack, it's giving "receipts for what happened" πŸ“¬

🌸 DESCRIPTION 🌸

so what this function does is it sets the bridge mode (VEB/VEPA) of the switch that the netdev (VSI) is hooked up to 🫢 iconic behavior honestly.

it then iterates through the PF VSI list and sets the loopback mode (but only if it's not already set for all VSIs connected to this switch πŸ‘€ like it's not doing redundant work, she's efficient). and also β€” and this is the part i need you to not miss β€” it updates the unicast switch filter rules for the corresponding switch of the netdev πŸ”₯


πŸ‘‘ SEE ALSO πŸ‘‘

okay so this list is long long, like a whole group chat of related functions 🫢 but every single one matters, so here they are, exactly as they live in Kernel file ./drivers/net/ethernet/intel/ice/ice_main.c:

ice_hw_to_dev(9), ice_get_tx_pending(9), ice_check_for_hang_subtask(9),
ice_init_mac_fltr(9), ice_add_mac_to_sync_list(9),
ice_add_mac_to_unsync_list(9), ice_vsi_fltr_changed(9),
ice_set_promisc(9), ice_clear_promisc(9), ice_vsi_sync_fltr(9),
ice_sync_fltr_subtask(9), ice_pf_dis_all_vsi(9),
ice_prepare_for_reset(9), ice_do_reset(9), ice_reset_subtask(9),
ice_print_topo_conflict(9), ice_print_link_msg(9),
ice_vsi_link_event(9), ice_set_dflt_mib(9), ice_check_phy_fw_load(9),
ice_check_module_power(9), ice_check_link_cfg_err(9), ice_link_event(9),
ice_watchdog_subtask(9), ice_init_link_events(9),
ice_handle_link_event(9), ice_aq_prep_for_event(9),
ice_aq_wait_for_event(9), ice_aq_check_events(9),
ice_aq_cancel_waiting_tasks(9), __ice_clean_ctrlq(9),
ice_ctrlq_pending(9), ice_clean_adminq_subtask(9),
ice_clean_mailboxq_subtask(9), ice_clean_sbq_subtask(9),
ice_service_task_schedule(9), ice_service_task_complete(9),
ice_service_task_stop(9), ice_service_task_restart(9),
ice_service_timer(9), ice_mdd_maybe_reset_vf(9),
ice_handle_mdd_event(9), ice_init_nvm_phy_type(9),
ice_init_link_dflt_override(9), ice_init_phy_cfg_dflt_override(9),
ice_init_phy_user_cfg(9), ice_phy_cfg(9), ice_check_media_subtask(9),
ice_service_task(9), ice_set_ctrlq_len(9), ice_schedule_reset(9),
ice_vsi_ena_irq(9), ice_vsi_req_irq_msix(9),
ice_xdp_alloc_setup_rings(9), ice_vsi_assign_bpf_prog(9),
ice_map_xdp_rings(9), ice_unmap_xdp_rings(9), ice_prepare_xdp_rings(9),
ice_destroy_xdp_rings(9), ice_vsi_rx_napi_schedule(9),
ice_vsi_determine_xdp_res(9), ice_max_xdp_frame_size(9),
ice_xdp_setup_prog(9), ice_xdp_safe_mode(9), ice_xdp(9),
ice_ena_misc_vector(9), ice_ll_ts_intr(9), ice_misc_intr(9),
ice_misc_intr_thread_fn(9), ice_dis_ctrlq_interrupts(9),
ice_free_irq_msix_ll_ts(9), ice_free_irq_msix_misc(9),
ice_ena_ctrlq_interrupts(9), ice_req_irq_msix_misc(9), ice_set_ops(9),
ice_set_netdev_features(9), ice_fill_rss_lut(9), ice_pf_vsi_setup(9),
ice_ctrl_vsi_setup(9), ice_lb_vsi_setup(9), ice_vlan_rx_add_vid(9),
ice_vlan_rx_kill_vid(9), ice_rep_indr_tc_block_unbind(9),
ice_tc_indir_block_unregister(9), ice_tc_indir_block_register(9),
ice_get_avail_q_count(9), ice_get_avail_txq_count(9),
ice_get_avail_rxq_count(9), ice_deinit_pf(9), ice_set_pf_caps(9),
ice_init_pf(9), ice_is_wol_supported(9), ice_vsi_recfg_qs(9),
ice_set_safe_mode_vlan_cfg(9), ice_log_pkg_init(9), ice_load_pkg(9),
ice_verify_cacheline_size(9), ice_send_version(9), ice_init_fdir(9),
ice_get_opt_fw_name(9), ice_request_fw(9), ice_init_tx_topology(9),
ice_init_supported_rxdids(9), ice_init_ddp_config(9),
ice_print_wake_reason(9), ice_register_netdev(9), ice_cfg_netdev(9),
ice_load(9), ice_unload(9), ice_probe(9), ice_set_wake(9),
ice_setup_mc_magic_wake(9), ice_remove(9), ice_shutdown(9),
ice_prepare_for_shutdown(9), ice_reinit_interrupt_scheme(9),
ice_suspend(9), ice_resume(9), ice_pci_err_detected(9),
ice_pci_err_slot_reset(9), ice_pci_err_resume(9),
ice_pci_err_reset_prepare(9), ice_pci_err_reset_done(9),
ice_module_init(9), ice_module_exit(9), ice_set_mac_address(9),
ice_set_rx_mode(9), ice_set_tx_maxrate(9), ice_fdb_add(9),
ice_fdb_del(9), ice_fix_features(9), ice_set_rx_rings_vlan_proto(9),
ice_set_vlan_offload_features(9), ice_set_vlan_filtering_features(9),
ice_set_vlan_features(9), ice_set_loopback(9), ice_set_features(9),
ice_vsi_vlan_setup(9), ice_vsi_cfg_lan(9), ice_init_moderation(9),
ice_napi_enable_all(9), ice_up_complete(9), ice_up(9),
ice_fetch_u64_tx_stats(9), ice_fetch_u64_rx_stats(9),
ice_update_vsi_tx_ring_stats(9), ice_update_vsi_rx_ring_stats(9),
ice_update_vsi_ring_stats(9), ice_update_vsi_stats(9),
ice_update_pf_stats(9), ice_get_stats64(9), ice_napi_disable_all(9),
ice_vsi_dis_irq(9), ice_down(9), ice_down_up(9),
ice_vsi_setup_tx_rings(9), ice_vsi_setup_rx_rings(9),
ice_vsi_open_ctrl(9), ice_vsi_open(9), ice_vsi_release_all(9),
ice_vsi_rebuild_by_type(9), ice_update_pf_netdev_link(9),
ice_rebuild(9), ice_change_mtu(9), ice_set_rss_lut(9),
ice_set_rss_key(9), ice_get_rss_lut(9), ice_get_rss_key(9),
ice_get_rss(9), ice_set_rss_hfunc(9), ice_bridge_getlink(9),
ice_vsi_update_bridge_mode(9), ice_tx_timeout(9),
ice_setup_tc_cls_flower(9), ice_setup_tc_block_cb_ingress(9),
ice_setup_tc_block_cb_egress(9), ice_validate_mqprio_qopt(9),
ice_add_vsi_to_fdir(9), ice_add_channel(9), ice_chnl_cfg_res(9),
ice_cfg_chnl_all_res(9), ice_setup_hw_channel(9), ice_setup_channel(9),
ice_set_bw_limit(9), ice_create_q_channel(9), ice_rem_all_chnl_fltrs(9),
ice_remove_q_channels(9), ice_rebuild_channels(9),
ice_create_q_channels(9), ice_setup_tc_mqprio_qdisc(9),
ice_cfg_txtime(9), ice_offload_txtime(9), ice_open(9),
ice_open_internal(9), ice_stop(9), ice_features_check(9)

like i said. long long. but she ate πŸ’…


okay and that's the whole page bestie, no notes. πŸŽ€ this is from ./drivers/net/ethernet/intel/ice and it's stamped October 2026 β€” so like, future vibes but make it kernel documentation 🌈 you're welcome, go slay your bridge config πŸ’–βœ¨

πŸ“¦ where this page comes from