i40e_get_vlan_list_sync(9)
π¦ i40e_get_vlan_list_sync β the Kernel API Manual era π
okay so bestie, we're in the Kernel API Manual today, and the star of the show is i40e_get_vlan_list_sync(9). Pull up a chair, grab a strawberry π, and let's get into it.
β¨ NAME β¨
i40e_get_vlan_list_sync β
so likeβ¦ the official one-liner after the dash is literally empty. nothing. a whole vibe of silence π. iconic honestly. the name is all you get, and the rest of the page is gonna do the explaining for it.
β¨ SYNOPSIS β¨
void i40e_get_vlan_list_sync (struct i40e_vsi *vsi , u16 *num_vlans ,
s16 **vlan_list );
look at her. void return, three args, no notes. she doesn't return anything, she just does things to your pointers and that's the whole main character energy π.
β¨ ARGUMENTS β¨
vsiβ pointer to the VSI. that's the thing we're looking at. π«Άnum_vlansβ au16 *, and it holds the number of VLANs inmac_filter_hash. it gets returned to the caller, so you get the count handed back to you. β¨vlan_listβ as16 **, and it's the list of VLANs present inmac_filter_hash, also returned to the caller. β οΈ big one: this array is allocated here, but it has to be freed in the caller. so like, she mallocs it and then hands you the bag and dips. if you don't free it, that's on you, bestie. no cap. π
β¨ DESCRIPTION β¨
Called to get the number of VLANs and the VLAN list present in mac_filter_hash. that's it, that's the whole description, and honestly? she's efficient. lowkey obsessed with the brevity πΈ.
so you call her, she digs through mac_filter_hash, tells you how many VLANs are in there (num_vlans) and hands you the actual list (vlan_list) β and again, you free that array. do not forget. i'm literally begging π.
β¨ SEE ALSO β¨
the kernel file in question is ./drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c β that's where the whole family lives. and the family is huge, so buckle up π¦:
i40e_vc_vf_broadcast(9), i40e_vc_link_speed2mbps(9), i40e_set_vf_link_state(9), i40e_vc_notify_vf_link_state(9), i40e_vc_notify_link_state(9), i40e_vc_notify_reset(9), i40e_vc_notify_vf_reset(9), i40e_vc_reset_vf(9), i40e_vc_isvalid_vsi_id(9), i40e_vc_isvalid_queue_id(9), i40e_vc_isvalid_vector_id(9), i40e_vc_get_pf_queue_id(9), i40e_get_real_pf_qid(9), i40e_config_irq_link_list(9), i40e_release_rdma_qvlist(9), i40e_config_rdma_qvlist(9), i40e_config_vsi_tx_queue(9), i40e_config_vsi_rx_queue(9), i40e_alloc_vsi_res(9), i40e_map_pf_queues_to_vsi(9), i40e_map_pf_to_vf_queues(9), i40e_enable_vf_mappings(9), i40e_disable_vf_mappings(9), i40e_free_vf_res(9), i40e_alloc_vf_res(9), i40e_quiesce_vf_pci(9), __i40e_getnum_vf_vsi_vlan_filters(9), i40e_getnum_vf_vsi_vlan_filters(9), i40e_set_vsi_promisc(9), i40e_config_vf_promiscuous_mode(9), i40e_sync_vfr_reset(9), i40e_trigger_vf_reset(9), i40e_cleanup_reset_vf(9), i40e_reset_vf(9), i40e_reset_all_vfs(9), i40e_free_vfs(9), i40e_alloc_vfs(9), i40e_pci_sriov_enable(9), i40e_pci_sriov_configure(9), i40e_vc_send_msg_to_vf(9), i40e_vc_send_resp_to_vf(9), i40e_sync_vf_state(9), i40e_vc_get_version_msg(9), i40e_del_qch(9), i40e_vc_get_max_frame_size(9), i40e_vc_get_vf_resources_msg(9), i40e_vc_config_promiscuous_mode_msg(9), i40e_vc_config_queues_msg(9), i40e_validate_queue_map(9), i40e_vc_config_irq_map_msg(9), i40e_ctrl_vf_tx_rings(9), i40e_ctrl_vf_rx_rings(9), i40e_vc_validate_vqs_bitmaps(9), i40e_vc_enable_queues_msg(9), i40e_vc_disable_queues_msg(9), i40e_check_enough_queue(9), i40e_vc_request_queues_msg(9), i40e_vc_get_stats_msg(9), i40e_check_vf_permission(9), i40e_vc_ether_addr_type(9), i40e_is_vc_addr_legacy(9), i40e_is_vc_addr_primary(9), i40e_update_vf_mac_addr(9), i40e_vc_add_mac_addr_msg(9), i40e_vc_del_mac_addr_msg(9), i40e_vc_add_vlan_msg(9), i40e_vc_remove_vlan_msg(9), i40e_vc_rdma_msg(9), i40e_vc_rdma_qvmap_msg(9), i40e_vc_config_rss_key(9), i40e_vc_config_rss_lut(9), i40e_vc_get_rss_hashcfg(9), i40e_vc_set_rss_hashcfg(9), i40e_vc_enable_vlan_stripping(9), i40e_vc_disable_vlan_stripping(9), i40e_validate_cloud_filter(9), i40e_find_vsi_from_seid(9), i40e_del_all_cloud_filters(9), i40e_vc_del_cloud_filter(9), i40e_vc_add_cloud_filter(9), i40e_vc_add_qch_msg(9), i40e_vc_del_qch_msg(9), i40e_vc_process_vf_msg(9), i40e_vc_process_vflr_event(9), i40e_validate_vf(9), i40e_check_vf_init_timeout(9), i40e_ndo_set_vf_mac(9), i40e_ndo_set_vf_port_vlan(9), i40e_ndo_set_vf_bw(9), i40e_ndo_get_vf_config(9), i40e_ndo_set_vf_link_state(9), i40e_ndo_set_vf_spoofchk(9), i40e_setup_vf_trust(9), i40e_ndo_set_vf_trust(9), i40e_get_vf_stats(9)
that's the whole group chat, everybody showed up π. iykyk π
okay and for the sign-off β this page comes to you from ./drivers/net/ethernet/intel/i40e, dated October 2026, and it lives under the header i40e_get_vlan_list_sync(9). mwah, that's a wrap πβ¨ remember to free your arrays, bestie, and slay ππ₯
π¦ 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