ice_vsi_setup(9)
π ice_vsi_setup(9) π
okay so bestie, we're in the Kernel API Manual today and this page is literally all about ice_vsi_setup β yes she's a 9er, yes she's iconic, and yes i'm gonna walk you through her whole thing. grab a π matcha, this is gonna be good.
β¨ NAME β¨
ice_vsi_setup β set up a VSI by a given type π
π¦ SYNOPSIS π¦
struct ice_vsi * ice_vsi_setup (struct ice_pf *pf , struct
ice_vsi_cfg_params *params );
π ARGUMENTS π
pfβ the board private structure π«Ά (aka the big one, the main character, theice_pfherself)paramsβ the parameters you wanna use when creating the VSI, like the lil recipe card for what she's gonna be β¨
π DESCRIPTION π
so what does she actually do, you ask? she allocates the sw VSI structure and its queue resources. that's the whole vibe. the way she sets up the software-side VSI struct and gets the queues sorted β lowkey a slay. π§
on success she returns a pointer to the successfully allocated and configured VSI sw struct β periodt, that's the win. π and on failure? she returns NULL. π that's it, that's the deal, ngl.
heads up bestie: NULL is a real outcome here, so check your return value fr fr β no cap, don't just assume she ate. π
π SEE ALSO π
the kernel file lives right here, go read her:
./drivers/net/ethernet/intel/ice/ice_lib.c
and here's her whole friend group β every single one of them, i'm not skipping a single icon:
ice_vsi_type_str(9),ice_vsi_ctrl_all_rx_rings(9),ice_vsi_alloc_arrays(9),ice_vsi_set_num_desc(9),ice_vsi_set_num_qs(9),ice_get_free_slot(9),ice_vsi_delete_from_hw(9),ice_vsi_free_arrays(9),ice_vsi_free_stats(9),ice_vsi_alloc_ring_stats(9),ice_vsi_free(9),ice_msix_clean_ctrl_vsi(9),ice_msix_clean_rings(9)ice_vsi_alloc_stat_arrays(9),ice_vsi_alloc_def(9),ice_vsi_alloc(9),ice_alloc_fd_res(9),ice_vsi_get_qs(9),ice_vsi_put_qs(9),ice_is_safe_mode(9),ice_is_rdma_ena(9),ice_vsi_clean_rss_flow_fld(9),ice_rss_clean(9),ice_vsi_set_rss_params(9),ice_set_dflt_vsi_ctx(9),ice_vsi_setup_q_map(9),ice_set_fd_vsi_ctx(9),ice_set_rss_vsi_ctx(9)ice_vsi_is_vlan_pruning_ena(9),ice_vsi_init(9),ice_vsi_clear_rings(9),ice_vsi_alloc_rings(9),ice_vsi_manage_rss_lut(9),ice_vsi_cfg_crc_strip(9),ice_vsi_cfg_rss_lut_key(9),ice_vsi_set_vf_rss_flow_fld(9),ice_vsi_set_rss_flow_fld(9),ice_pf_state_is_nominal(9),ice_update_eth_stats(9)ice_write_qrxflxp_cntxt(9),ice_intrl_usec_to_reg(9),ice_write_intrl(9),__ice_write_itr(9),ice_write_itr(9),ice_set_q_vector_intrl(9),ice_vsi_cfg_msix(9),ice_vsi_start_all_rx_rings(9),ice_vsi_stop_all_rx_rings(9),ice_vsi_stop_tx_rings(9),ice_vsi_stop_lan_tx_rings(9),ice_vsi_stop_xdp_tx_rings(9),ice_vsi_is_rx_queue_active(9)ice_vsi_cfg_sw_lldp(9),ice_cfg_sw_rx_lldp(9),ice_set_agg_vsi(9),ice_vsi_cfg_def(9),ice_vsi_cfg(9),ice_vsi_decfg(9),ice_vsi_release_msix(9),ice_vsi_free_irq(9),ice_vsi_free_tx_rings(9),ice_vsi_free_rx_rings(9),ice_vsi_close(9),ice_ena_vsi(9),ice_dis_vsi(9)ice_vsi_set_napi_queues(9),ice_vsi_clear_napi_queues(9),ice_napi_add(9),ice_vsi_release(9),ice_vsi_rebuild_get_coalesce(9),ice_vsi_rebuild_set_coalesce(9),ice_vsi_realloc_stat_arrays(9),ice_vsi_rebuild(9),ice_is_reset_in_progress(9),ice_wait_for_reset(9),ice_vsi_update_q_map(9),ice_vsi_cfg_netdev_tc(9),ice_vsi_setup_q_map_mqprio(9),ice_vsi_cfg_tc(9)ice_update_tx_ring_stats(9),ice_update_rx_ring_stats(9),ice_fetch_tx_ring_stats(9),ice_fetch_rx_ring_stats(9),ice_is_dflt_vsi_in_use(9),ice_is_vsi_dflt_vsi(9),ice_set_dflt_vsi(9),ice_clear_dflt_vsi(9),ice_get_link_speed_mbps(9),ice_get_link_speed_kbps(9),ice_set_min_bw_limit(9),ice_set_max_bw_limit(9),ice_set_link(9)ice_vsi_add_vlan_zero(9),ice_vsi_del_vlan_zero(9),ice_vsi_num_zero_vlans(9),ice_vsi_has_non_zero_vlans(9),ice_vsi_num_non_zero_vlans(9),ice_is_feature_supported(9),ice_set_feature_support(9),ice_clear_feature_support(9),ice_init_feature_support(9)ice_vsi_update_security(9),ice_vsi_ctx_set_antispoof(9),ice_vsi_ctx_clear_antispoof(9),ice_vsi_update_local_lb(9),ice_vsi_update_l2tsel(9)
like, that's the whole crew β the entire roster, nobody left on read. π
okay and finally, the cute lil sign-off at the bottom: this page comes from ./drivers/net/ethernet/intel/ice and she's dated October 2026 β stamped, sealed, and delivered with a bow ππ«Ά. go set up that VSI bestie, you've got this, iykyk β¨πΈ
π¦ 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