ice_vf_ena_vlan_promisc(9)
π ice_vf_ena_vlan_promisc(9) β bestie's Kernel API Manual era
okay so this is a page straight out of the Kernel API Manual, and it's about one very specific little function. no cap, it does exactly one job and it wants you to check first. let's get into it π«Ά
β¨ NAME β¨
ice_vf_ena_vlan_promisc β enables Tx/Rx VLAN promiscuous for the VLAN π
π¦ SYNOPSIS π¦
int ice_vf_ena_vlan_promisc (struct ice_vf *vf , struct ice_vsi *vsi ,
struct ice_vlan *vlan );
like, that's the whole signature. three structs, one int coming back at you β¨
π ARGUMENTS π
vfβ the VF you're enabling VLAN promisc on. this is the main character fr.vsiβ the VF's VSI, aka the thing you actually use to enable VLAN promiscuous mode.vlanβ the VLAN you're doing the enabling for. the VLAN in question. iconic.
πΈ DESCRIPTION πΈ
okay so here's the vibe check π β this function should only be called if VLAN promiscuous mode is allowed. like, that's a hard prerequisite bestie, don't just yeet a call at it and hope π and how do you know if it's allowed? you check with ice_is_vlan_promisc_allowed. that's the gatekeeper. iykyk.
no cap: if VLAN promiscuous mode isn't allowed, this is not your moment. check with ice_is_vlan_promisc_allowed first. periodt. π
π§ SEE ALSO π§
the kernel file in question lives at ./drivers/net/ethernet/intel/ice/virt/virtchnl.c β go read it, it's giving lore π
and here's the whole friend group, one by one, no skips:
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_update_legacy_cached_mac(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_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)
like, that's a whole group chat and every single one of them ate π₯
and that's the page bestie!! it comes from ./drivers/net/ethernet/intel/i... and it's dated October 2026 β so yeah, future-coded of it, we love that for us βπ stay hydrated, check ice_is_vlan_promisc_allowed first, and slay your VLANs responsibly ππ¦β¨
π¦ 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