ice_put_vf(9)
π
ice_put_vf β the "release a reference to a VF" page, brought to you by the Kernel API Manual β¨
okay so bestie, if you're here it's because you grabbed a VF reference and now you gotta give it back. this is the giving it back page π
πΈ NAME πΈ
ice_put_vf β release a reference to a VF, like returning a library book but the book is a virtual function and the librarian is the kernel π
β SYNOPSIS β
void ice_put_vf (struct ice_vf *vf );
π¦ ARGUMENTS π¦
vfβ the VF structure to decrease reference count on. that's the one you're dropping a ref on, no cap π«Ά
π DESCRIPTION π
so what this does is decrease the reference count for a VF, and free the entry if it is no longer in use. lowkey it's just the cleanup half of the whole get/put situation.
you must call this after ice_get_vf_by_id once the reference to the VF structure is no longer used. and like, i mean it bestie β otherwise, the VF structure will never be freed. not "eventually", not "when the vibes improve" β never. that's a memory leak with main character energy and you do NOT want it π
so the rule is: if you got it withice_get_vf_by_id, you put it back withice_put_vf. pair them like matching nails π
π₯ SEE ALSO π₯
the source lives in the kernel file ./drivers/net/ethernet/intel/ice/ice_vf_lib.c β that's the home base, bestie π
and here's the whole squad, in order, every single one of them (iykyk):
ice_get_vf_by_id(9), ice_release_vf(9), ice_has_vfs(9), ice_get_num_vfs(9), ice_get_vf_vsi(9), ice_is_vf_disabled(9), ice_wait_on_vf_reset(9), ice_check_vf_ready_for_cfg(9), ice_trigger_vf_reset(9), ice_vf_pre_vsi_rebuild(9), ice_vf_reconfig_vsi(9), ice_vf_rebuild_vsi(9), ice_vf_rebuild_host_vlan_cfg(9), ice_vf_rebuild_host_tx_rate_cfg(9), ice_vf_set_host_trust_cfg(9), ice_vf_rebuild_host_mac_cfg(9), ice_vf_rebuild_aggregator_node_cfg(9), ice_vf_rebuild_host_cfg(9), ice_set_vf_state_qs_dis(9), ice_vf_set_initialized(9), ice_vf_post_vsi_rebuild(9), ice_is_any_vf_in_unicast_promisc(9), ice_vf_get_promisc_masks(9), ice_vf_clear_all_promisc_modes(9), ice_vf_set_vsi_promisc(9), ice_vf_clear_vsi_promisc(9), ice_reset_vf_mbx_cnt(9), ice_reset_all_vfs(9), ice_notify_vf_reset(9), ice_reset_interrupts(9), ice_reset_vf(9), ice_set_vf_state_dis(9), ice_initialize_vf_entry(9), ice_dis_vf_qs(9), ice_err_to_virt_err(9), ice_check_vf_init(9), ice_vf_get_port_info(9), ice_cfg_mac_antispoof(9), ice_vsi_ena_spoofchk(9), ice_vsi_dis_spoofchk(9), ice_vsi_apply_spoofchk(9), ice_is_vf_trusted(9), ice_vf_has_no_qs_ena(9), ice_is_vf_link_up(9), ice_vf_ctrl_invalidate_vsi(9), ice_vf_ctrl_vsi_release(9), ice_vf_ctrl_vsi_setup(9), ice_vf_init_host_cfg(9), ice_vf_invalidate_vsi(9), ice_vf_vsi_release(9), ice_get_vf_ctrl_vsi(9), ice_vf_update_mac_lldp_num(9)
π the sign-off π
that's the page!! it ships out of ./drivers/net/ethernet/intel/ice, dated October 2026, and it's literally titled ice_put_vf(9) in case you forgot where you were π now go put that reference back, bestie β slay, and free your memory πβ
π¦ 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