ice_fill_sw_rule(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ‘‘ ice_fill_sw_rule β€” like, the Kernel API Manual era πŸ’…

okay so bestie, welcome to ice_fill_sw_rule(9), glam edition ✨ this one lives in the Kernel API Manual and honestly? she's a helper function, and helpers are the backbone of everything, no cap 🫢


🌸 NAME 🌸

ice_fill_sw_rule β€” the helper function that fills the switch rule structure. that's it, that's the job, and she does it flawlessly πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

void ice_fill_sw_rule (struct ice_hw *hw , struct ice_fltr_info *f_info
, struct ice_sw_rule_lkup_rx_tx *s_rule , enum ice_adminq_opc opc );

return type is void, so like… she gives nothing back emotionally, but she does the work. main character energy fr πŸ”₯


πŸŽ€ ARGUMENTS πŸŽ€

  • hw β€” pointer to the hardware structure. yes queen, point at the hardware πŸ’œ
  • f_info β€” the entry that's holding all the packet forwarding info. the little info bag, iykyk πŸ“
  • s_rule β€” the switch rule structure that gets filled in based on mac_entry. fill her in, bestie ✨
  • opc β€” the switch rules population command type β€” you literally pass in the command opcode here. just pass it in πŸ’…
ngl if you're passing an opcode, make sure it's the opcode for the switch rules population command, because that's what this argument is and we don't guess 🌸

🌈 SEE ALSO 🌈

first up, the actual kernel file, and yes she's iconic:

Kernel file ./drivers/net/ethernet/intel/ice/ice_switch.c πŸ’–

and now the friend group β€” the entire extended crew, in order, no one gets left out 🫢:

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_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)

and more of the girlies, still going, she's not done πŸŽ€:

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_alloc_res_cntr(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)

and the last little squad, periodt πŸ”₯:

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)


k bye bestie, go fill that switch rule πŸ’–βœ¨

oh and one last thing β€” this whole page comes from ./drivers/net/ethernet/intel/ice, dated October 2026, and the page herself is ice_fill_sw_rule(9) πŸ¦‹ slay, drink water, mwah πŸ’œ

πŸ“¦ where this page comes from