ice_update_l...y_cached_mac(9)
π ice_update_legacy_cached_mac β welcome to the Kernel API Manual, bestie β¨
okay so. this one's a lil function page from the Kernel API Manual and it's honestly so specific it's iconic. it does one (1) thing, for one (1) kind of VF driver, and it wants you to know it. let's get into it π«Ά
πΈ NAME
ice_update_legacy_cached_mac β update the cached hardware MAC for a legacy VF π
like. that's the whole job. it updates cached hardware MAC. for a legacy VF. slay.
β¨ SYNOPSIS
void ice_update_legacy_cached_mac (struct ice_vf *vf , struct virtchnl_ether_addr *vc_ether_addr );
void, no return value, no drama (okay maybe a little drama, see DESCRIPTION π). takes two things and does not give anything back. lowkey humble of it.
π ARGUMENTS
vfβ the VF we're updating π this is the one getting its cache refreshedvc_ether_addrβ thestruct virtchnl_ether_addrcoming in fromVIRTCHNLwith the MAC that needs checking π it's the structure fromVIRTCHNL, and yes it's there so we can check the MAC
two args. that's it. we love a short parameter list ngl.
π DESCRIPTION
okay so here's the whole vibe: this function only updates the cached hardware MAC for legacy VF drivers, and it does it on delete ποΈβ¨
and the reason is genuinely so real β we literally cannot guarantee the order or the type of MAC coming from the VF driver π so instead of guessing and making it weird, the function keeps it cute and constrained: legacy VF drivers, on delete, that's the lane. periodt.
no cap, that's the entire description. sometimes the most correct code is the most restrained code, and this is giving main character restraint energy π
π¦ SEE ALSO
the friend group π―ββοΈ β a whole roster of related kernel functions, plus where to find the source. every single one, because we don't do exclusion here π
- Kernel file
./drivers/net/ethernet/intel/ice/virt/virtchnl.c ice_vc_vf_broadcast(9)ice_set_pfe_link(9)ice_vc_notify_vf_link_state(9)ice_vc_notify_link_state(9)ice_vc_notify_reset(9)ice_vc_send_msg_to_vf(9)ice_vc_get_ver_msg(9)ice_vc_get_vlan_caps(9)ice_vc_get_vf_res_msg(9)ice_vc_reset_vf_msg(9)ice_vc_isvalid_vsi_id(9)ice_vc_get_qos_caps(9)ice_vc_cfg_promiscuous_mode_msg(9)ice_vc_get_stats_msg(9)ice_can_vf_change_mac(9)ice_vc_ether_addr_type(9)ice_is_vc_addr_legacy(9)ice_is_vc_addr_primary(9)ice_vfhw_mac_add(9)ice_is_mc_lldp_eth_addr(9)ice_vc_can_add_mac(9)ice_vc_add_mac_addr(9)ice_is_legacy_umac_expired(9)ice_vfhw_mac_del(9)ice_vc_del_mac_addr(9)ice_vc_handle_mac_addr_msg(9)ice_vc_add_mac_addr_msg(9)ice_vc_del_mac_addr_msg(9)ice_vf_vlan_offload_ena(9)ice_is_vlan_promisc_allowed(9)ice_vf_ena_vlan_promisc(9)ice_vf_dis_vlan_promisc(9)ice_vf_has_max_vlans(9)ice_vc_process_vlan_msg(9)ice_vc_add_vlan_msg(9)ice_vc_remove_vlan_msg(9)ice_vsi_is_rxq_crc_strip_dis(9)ice_vc_ena_vlan_stripping(9)ice_vc_dis_vlan_stripping(9)ice_vc_query_rxdid(9)ice_vf_init_vlan_stripping(9)ice_vf_outer_vlan_not_allowed(9)ice_vc_set_dvm_caps(9)ice_vc_set_svm_caps(9)ice_vc_get_offload_vlan_v2_caps(9)ice_vc_validate_vlan_tpid(9)ice_vc_is_valid_vlan(9)ice_vc_validate_vlan_filter_list(9)ice_vc_to_vlan(9)ice_vc_vlan_action(9)ice_vc_del_vlans(9)ice_vc_remove_vlan_v2_msg(9)ice_vc_add_vlans(9)ice_vc_validate_add_vlan_filter_list(9)ice_vc_add_vlan_v2_msg(9)ice_vc_valid_vlan_setting(9)ice_vc_valid_vlan_setting_msg(9)ice_vc_get_tpid(9)ice_vc_ena_vlan_offload(9)ice_vc_ena_vlan_stripping_v2_msg(9)ice_vc_dis_vlan_stripping_v2_msg(9)ice_vc_ena_vlan_insertion_v2_msg(9)ice_vc_dis_vlan_insertion_v2_msg(9)ice_virtchnl_set_dflt_ops(9)ice_vc_repr_add_mac(9)ice_vc_repr_del_mac(9)ice_virtchnl_set_repr_ops(9)ice_is_malicious_vf(9)ice_vc_process_vf_msg(9)
π quick reminder bestie: this is kernel-side VF/virtchnl stuff. if you're poking at it, know which VF driver you're dealing with before you go changing MAC assumptions, mkay? the "we cannot guarantee order/type" line is not decoration, it's the whole reason this function is built the way it is π
that's the page!! source lives down at ./drivers/net/ethernet/intel/i..., and this lil icon dropped in October 2026 ποΈπ go read the virtchnl file, it's giving lore. mwah ππ¦
π¦ 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