i40e_get_ethtool_fdir_all(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… i40e_get_ethtool_fdir_all β€” the kernel API manual, bestie edition πŸŽ€

Okay so real talk, this is a page from the Kernel API Manual (i40e_get_ethtool_fdir_all(9)) and it's lowkey iconic. It's a function that counts your flow-director rules so ethtool can flex how many you've got. Let's get into it ✨


✨ NAME ✨

i40e_get_ethtool_fdir_all β€” populates the rule count of a command. That's it. That's the whole job. She counts rules. Periodt. πŸ’…


🌸 SYNOPSIS 🌸

int i40e_get_ethtool_fdir_all (struct i40e_pf *pf , struct ethtool_rxnfc
*cmd , u32 *rule_locs );

Three args, one int back, no drama. πŸ¦‹


πŸŽ€ ARGUMENTS πŸŽ€

  • pf β€” pointer to the physical function struct. Like, the whole PF vibe. She's the main character here, everything else is supporting cast. πŸ‘‘
  • cmd β€” the command to get or set Rx flow classification rules. This is the ethtool command doing the talking. πŸ—£οΈ
  • rule_locs β€” array of used rule locations. Basically the list of where all the rules are chilling. πŸ“

πŸ’– DESCRIPTION πŸ’–

So what she does is: this function populates both the total and actual rule count of the ethtool flow classification command. Two counts, one function call, we love an efficient queen. πŸ”₯

And the return situation, bestie, listen up:

  • Returns 0 on success πŸŽ‰
  • Returns -EMSGSIZE if entry not found 😭
Ngl the -EMSGSIZE one is a little "huh?" on the surface, but that's literally what the page says, so that's what you get fr fr. Don't @ me. πŸ™ˆ

🫢 SEE ALSO 🫢

Kernel file ./drivers/net/ethernet/intel/i40e/i40e_ethtool.c

And now, the moment you've all been waiting for β€” the guest list. It's long. It's giving VIP section. Get comfy, we're going through everyone πŸ’€

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_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_set_rxfh(9), i40e_get_priv_flags(9), i40e_set_priv_flags(9), i40e_get_module_info(9), i40e_get_module_eeprom(9)

Like I said. The whole friend group. 🫢


✨ that's the page, bestie ✨

This cutie came out of ./drivers/net/ethernet/intel/i40e and the version date on it is October 2026 β€” so mark your calendar, she's a future icon πŸ‘‘πŸ¦‹ and the page itself is titled i40e_get_ethtool_fdir_all(9), iykyk πŸ’œ

πŸ“¦ where this page comes from