ice_add_rss_cfg_pre_gtpu(9)
π
ice_add_rss_cfg_pre_gtpu β the Kernel API Manual era β¨
okay so bestie, picture this: we're deep in the Intel ice driver, vibes are immaculate, and somebody needs to pre-process the GTPU RSS configuration before a brand new hash context gets added. That's this function. She's from the Kernel API Manual, she's ice_add_rss_cfg_pre_gtpu(9), and she is literally the bouncer at the door of your hash config. π«Ά
β¨ SYNOPSIS β¨
int ice_add_rss_cfg_pre_gtpu (struct ice_vf *vf , struct
ice_vf_hash_gtpu_ctx *ctx , u32 ctx_idx );
no cap, that's the whole signature. let's break her down π
π ARGUMENTS π
vfβ pointer to the VF info. the VF in question. she knows her.ctxβ pointer to the context of the GTPU hash. the actual vibe of the hash, handed to you.ctx_idxβ index of the hash context. which slot in the lineup we're talking about.
π¦ DESCRIPTION π¦
so what she actually does? She pre-processes the GTPU hash configuration before adding a new hash context. Iconic behaviour: she goes in and removes or reorders the existing hash configurations that might conflict with the new one. yes, she will move things. yes, she will delete things. it's giving main character energy but for TCAM entries. π
the way that this matters is because of ordering, bestie, and it is so real:
- if a
GTPU_UPorGTPU_DWNrule is configured after aGTPU_EHrule, theGTPU_EHhash will be matched first β because of TCAM write and match order, which is top-down. so in that case, theGTPU_EHrule must be moved after theGTPU_UP/DWNrule. - conversely (love a good conversely π), if a
GTPU_EHrule is configured after aGTPU_UP/DWNrule, theUP/DWNrules should be removed to avoid conflict.
so yeah. she's the pre-processor. she's keeping the TCAM match order from becoming a whole mess. obsessed. π
π RETURN π
0on success π- or a negative error code on failure π (she tried her best, fr fr)
π₯ SEE ALSO π₯
- Kernel file
./drivers/net/ethernet/intel/ice/virt/rss.cβ go read the source, iykyk ice_vc_validate_pattern(9)ice_vc_parse_rss_cfg(9)ice_vf_adv_rss_offload_ena(9)ice_is_hash_cfg_valid(9)ice_hash_cfg_reset(9)ice_hash_cfg_record(9)ice_hash_moveout(9)ice_hash_moveback(9)ice_hash_remove(9)ice_add_rss_cfg_pre_ip(9)ice_calc_gtpu_ctx_idx(9)ice_map_ip_ctx_idx(9)ice_add_rss_cfg_pre(9)ice_add_rss_cfg_post_gtpu(9)ice_rem_rss_cfg_post(9)ice_rem_rss_cfg_wrap(9)ice_add_rss_cfg_wrap(9)ice_parse_raw_rss_pattern(9)ice_add_raw_rss_cfg(9)ice_rem_raw_rss_cfg(9)ice_vc_handle_rss_cfg(9)ice_vc_config_rss_key(9)ice_vc_config_rss_lut(9)ice_vc_config_rss_hfunc(9)ice_vc_get_rss_hashcfg(9)ice_vc_set_rss_hashcfg(9)
like, an entire friend group. the whole squad. π§
okay that's the page, bestie π β source/version line lives at ./drivers/net/ethernet/intel/i... and this queen is dated October 2026. slay, see you in the next (9) page πΈπ
π¦ 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