i40e_get_stat_strings(9)
π i40e_get_stat_strings(9) β the Kernel API Manual page, bestie edition π
okay so you found the manual page for i40e_get_stat_strings(9) in the Kernel API Manual and you're like "what does this even do" β don't worry, I got you. It's literally a tiny little function that copies stat strings into a buffer you hand it. That's the whole vibe. β¨
πΈ NAME πΈ
i40e_get_stat_strings β copy stat strings into a supplied buffer. That's it, that's the gig. π
π¦ SYNOPSIS π¦
void i40e_get_stat_strings (struct net_device *netdev , u8 *data );
she takes two things and returns nothing (void), because she's a "do the thing, don't talk about it" kind of function. iconic behavior. π
π ARGUMENTS π
netdevβ thenetdevyou're collecting strings for. the main character, essentially. πdataβ the buffer you supply, and the function copies the strings into it. your container, your problem, your pre-allocated responsibility. π
π₯ DESCRIPTION π₯
Copy the strings related to stats for this netdev. That's the whole mission statement, no cap.
But here's the important part, so lock in: it expects data to be pre-allocated with the size reported by i40e_get_stats_count. You do NOT get to roll up with a random-sized buffer and hope for the best. That's not the vibe. π«Ά
Also β and this is the part people miss β the strings must be copied in a static order, and the total count must not change for a given netdev. Like, don't reorder them, don't add extras, don't get creative. Consistency is the whole point.
if you want the full tea on that, go see i40e_get_stats_count for more details. she explains everything. π
β SEE ALSO β
so many friends, bestie. it's giving family reunion. π
- Kernel file
./drivers/net/ethernet/intel/i40e/i40e_ethtool.c - 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_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_set_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 β go forth and copy those stat strings responsibly π β¨
this lil beauty lives over in ./drivers/net/ethernet/intel/i40e, and it's serving October 2026 energy, filed under i40e_get_stat_strings(9). 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