i40e_set_rxfh(9)
β¨ i40e_set_rxfh(9) β¨
okay so bestie, welcome to the Kernel API Manual β yes we're literally in the kernel docs rn, and honestly? iconic. π
This one's all about i40e_set_rxfh β the function that sets the rx flow hash indirection table. That's the whole vibe. π
πΈ NAME πΈ
i40e_set_rxfh β set the rx flow hash indirection table π¦
β SYNOPSIS β
int i40e_set_rxfh (struct net_device *netdev , struct ethtool_rxfh_param
*rxfh , struct netlink_ext_ack *extack );
π ARGUMENTS π
netdevβ the network interface device structure, aka the nic we're talking about π©·rxfhβ pointer to the param struct (indir,key,hfunc), this is where the actual settings live, no cap πextackβ extended ACK from the Netlink message, so the kernel can talk back to userspace when something's up π
π₯ DESCRIPTION π₯
So here's the tea β: this function returns -EINVAL if the table specifies an invalid queue id β like, if you hand it an indirection table pointing at a queue that doesn't exist, it's gonna β¨rejectβ¨ you. Not me being mean, that's just the contract. π
Otherwise? It returns 0 after programming the table. Slayed. periodt. π
ngl, the-EINVALcase is the only drama here β every other path is a happy little0once the table's been programmed. π«Ά
π§ SEE ALSO π§
Kernel file ./drivers/net/ethernet/intel/i40e/i40e_ethtool.c, plus the whole friend group of related functions β every single one, bestie, we're not skipping any π:
struct i40e_stats(9)i40e_add_one_ethtool_stat(9)__i40e_add_ethtool_stats(9)i40e_add_ethtool_stats(9)i40e_add_queue_stats(9)__i40e_add_stat_strings(9)i40e_add_stat_strings(9)i40e_partition_setting_complaint(9)i40e_phy_type_to_ethtool(9)i40e_get_settings_link_up_fec(9)i40e_get_settings_link_up(9)i40e_get_settings_link_down(9)i40e_get_link_ksettings(9)i40e_speed_to_link_speed(9)i40e_set_link_ksettings(9)i40e_get_pauseparam(9)i40e_set_pauseparam(9)i40e_get_stats_count(9)i40e_get_veb_tc_stats(9)i40e_get_pfc_stats(9)i40e_get_ethtool_stats(9)i40e_get_stat_strings(9)i40e_set_wol(9)__i40e_get_coalesce(9)i40e_get_coalesce(9)i40e_get_per_queue_coalesce(9)i40e_set_itr_per_queue(9)__i40e_set_coalesce(9)i40e_set_coalesce(9)i40e_set_per_queue_coalesce(9)i40e_check_mask(9)i40e_parse_rx_flow_user_data(9)i40e_fill_rx_flow_user_data(9)i40e_get_ethtool_fdir_all(9)i40e_get_ethtool_fdir_entry(9)i40e_get_rx_ring_count(9)i40e_get_rxnfc(9)i40e_get_rss_hash_bits(9)i40e_update_ethtool_fdir_entry(9)i40e_prune_flex_pit_list(9)i40e_del_fdir_entry(9)i40e_unused_pit_index(9)i40e_find_flex_offset(9)i40e_add_flex_offset(9)__i40e_reprogram_flex_pit(9)i40e_reprogram_flex_pit(9)i40e_flow_str(9)i40e_pit_index_to_mask(9)i40e_print_input_set(9)i40e_check_fdir_input_set(9)i40e_match_fdir_filter(9)i40e_disallow_matching_filters(9)i40e_add_fdir_ethtool(9)i40e_set_rxnfc(9)i40e_max_channels(9)i40e_get_channels(9)i40e_set_channels(9)i40e_get_rxfh_key_size(9)i40e_get_rxfh_indir_size(9)i40e_get_rxfh(9)i40e_get_priv_flags(9)i40e_set_priv_flags(9)i40e_get_module_info(9)i40e_get_module_eeprom(9)
π and that's the page, bestie!
okay final sign-off ily π«Ά β this one lives in ./drivers/net/ethernet/intel/i40e, dated October 2026, and it's filed under i40e_set_rxfh(9) in the Kernel API Manual. go forth and program that indirection table, you absolute main character ππ
π¦ 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