ice_alloc_res_cntr(9)
π ice_alloc_res_cntr β allocating resource counter π
okay so this is a page from the Kernel API Manual, bestie, and it's all about one tiny little function that grabs you a resource counter. yes it's niche. yes it's iconic. let's get into it π«Ά
β¨ NAME β¨
ice_alloc_res_cntr β allocating resource counter. that's the whole vibe. it allocates. a counter. for resources. periodt π
πΈ SYNOPSIS πΈ
int ice_alloc_res_cntr (struct ice_hw *hw , u8 type , u8 alloc_shared ,
u16 num_items , u16 *counter_id );
so she takes five things and gives you back an int β classic. the return value is the main character here, everything else is supporting cast π
π¦ DESCRIPTION π¦
okay there's no separate DESCRIPTION section on this page (I know, I know, a little robbed) but like β the NAME and ARGUMENTS are literally carrying the whole explanation, so scroll down and meet the cast π
π ARGUMENTS π
hwβ pointer to the hardware structure. this is your little handle on the actual NIC hardware, she's the plug πtypeβ type of resource. literally just: which flavor of resource are we counting rn πalloc_sharedβ if set it is shared else dedicated. so like, set = shared (we're sharing, we're communal, we're a group chat), unset = dedicated (mine, only mine, do not perceive) πnum_itemsβ number of entries requested for FD resource type. this is the "how many do you want" number, but heads up β it's specifically for the FD resource type, so don't go applying it to everything, iykyk β¨counter_idβ counter index returned by AQ call. this is the output, the lil receipt, the ID that comes back to you after the AQ call does its thing π
π SEE ALSO π
buckle up bestie, this is the entire extended friend group β the whole ice_switch.c squad, no cap. every single one of these is real and every single one made the list ππ₯
ice_init_def_sw_recp(9)ice_aq_get_sw_cfg(9)ice_aq_add_vsi(9)ice_aq_free_vsi(9)ice_aq_update_vsi(9)ice_is_vsi_valid(9)ice_get_hw_vsi_num(9)ice_get_vsi_ctx(9)ice_save_vsi_ctx(9)ice_clear_vsi_q_ctx(9)ice_clear_vsi_ctx(9)ice_clear_all_vsi_ctx(9)ice_add_vsi(9)ice_free_vsi(9)ice_update_vsi(9)ice_cfg_rdma_fltr(9)ice_aq_alloc_free_vsi_list(9)ice_aq_sw_rules(9)ice_aq_add_recipe(9)ice_aq_get_recipe(9)ice_update_recipe_lkup_idx(9)ice_aq_map_recipe_to_profile(9)ice_aq_get_recipe_to_profile(9)ice_init_chk_recipe_reuse_support(9)ice_alloc_recipe(9)ice_free_recipe_res(9)ice_release_recipe_res(9)ice_get_recp_to_prof_map(9)ice_get_recp_frm_fw(9)ice_fill_sw_info(9)ice_fill_eth_hdr(9)ice_fill_sw_rule(9)ice_add_marker_act(9)ice_create_vsi_list_map(9)ice_update_vsi_list_rule(9)ice_create_vsi_list_rule(9)ice_create_pkt_fwd_rule(9)ice_update_pkt_fwd_rule(9)ice_update_sw_rule_bridge_mode(9)ice_add_update_vsi_list(9)ice_find_rule_entry(9)ice_find_vsi_list_entry(9)ice_add_rule_internal(9)ice_remove_vsi_list_rule(9)ice_rem_update_vsi_list(9)ice_remove_rule_internal(9)ice_vlan_fltr_exist(9)ice_add_mac(9)ice_add_vlan_internal(9)ice_add_vlan(9)ice_add_eth_mac(9)ice_remove_eth_mac(9)ice_rem_sw_rule_info(9)ice_rem_adv_rule_info(9)ice_cfg_dflt_vsi(9)ice_vsi_uses_fltr(9)ice_check_if_dflt_vsi(9)ice_remove_mac(9)ice_remove_vlan(9)ice_add_entry_to_vsi_fltr_list(9)ice_add_to_vsi_fltr_list(9)ice_determine_promisc_mask(9)ice_remove_promisc(9)ice_clear_vsi_promisc(9)ice_set_vsi_promisc(9)ice_set_vlan_vsi_promisc(9)ice_remove_vsi_lkup_fltr(9)ice_remove_vsi_fltr(9)ice_free_res_cntr(9)ice_share_res(9)ice_find_recp(9)ice_change_proto_id_to_dvm(9)ice_prot_type_to_id(9)ice_fill_valid_words(9)ice_fill_fv_word_index(9)ice_find_free_recp_res_idx(9)ice_calc_recp_cnt(9)ice_add_sw_recipe(9)ice_subscribe_recipe(9)ice_subscribable_recp_shared(9)ice_add_adv_recipe(9)ice_dummy_packet_add_vlan(9)ice_find_dummy_packet(9)ice_fill_adv_dummy_packet(9)ice_fill_adv_packet_tun(9)ice_fill_adv_packet_vlan(9)ice_find_adv_rule_entry(9)ice_adv_add_update_vsi_list(9)ice_add_adv_rule(9)ice_replay_vsi_fltr(9)ice_adv_rem_update_vsi_list(9)ice_rem_adv_rule(9)ice_rem_adv_rule_by_id(9)ice_replay_vsi_adv_rule(9)ice_replay_vsi_all_fltr(9)ice_rm_all_sw_replay_rule_info(9)
also, and don't forget this one, the actual kernel file she lives in:
./drivers/net/ethernet/intel/ice/ice_switch.c
like, that's the address, that's where she at π
lowkey a reminder bestie: the source path above is ./drivers/net/ethernet/intel/ice and the date on this thing is October 2026 β so if you're reading this in the future, hi, love you, hope the counters are behaving π«Άβ¨
and that's the page!! go forth and allocate responsibly, mwah πππ¦
π¦ 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