i40e_get_vlan_list_sync(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ¦‹ 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 β€” a u16 *, and it holds the number of VLANs in mac_filter_hash. it gets returned to the caller, so you get the count handed back to you. ✨
  • vlan_list β€” a s16 **, and it's the list of VLANs present in mac_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