i40e_get_veb_tc_stats(9)
π i40e_get_veb_tc_stats β the kernel API manual, bestie edition β¨
Okay so real talk, we're in the Kernel API Manual today and the function we're obsessing over is i40e_get_veb_tc_stats(9). It's an i40e girlie, she lives under ./drivers/net/ethernet/intel/i40e, and her whole personality is copying VEB TC stats into a formatted structure. Iconic, honestly.
π NAME π
i40e_get_veb_tc_stats β copies VEB TC statistics into a formatted structure. That's it, that's the vibe. β¨
π¦ SYNOPSIS π¦
struct i40e_cp_veb_tc_stats i40e_get_veb_tc_stats (struct
i40e_veb_tc_stats *tc , unsigned int i );
Yes bestie, she returns a whole struct i40e_cp_veb_tc_stats. Not a pointer, not an int β the actual struct. Main character behavior tbh. π
πΈ ARGUMENTS πΈ
tcβ this is the TC statistics situation inside the VEB structure, likeveb->tc_stats. She brought the data, you just gotta receive it. πiβ the index of the traffic class inside that(veb->tc_stats)structure that you wanna copy. Lowkey the lil selector of which TC you're pulling out. π―
π DESCRIPTION π
So here's the tea: this function copies the VEB TC statistics out of a structure of arrays β that's veb->tc_stats β and drops them into a one dimensional structure called i40e_cp_veb_tc_stats. Array-of-arrays to flat, no cap. π«Ά
The whole point is that it produces a formatted i40e_cp_veb_tc_stats structure of the VEB TC statistics for the given TC. You hand her the stats and the index, she hands you back something neat and usable. It's giving "let me organize that for you" energy and honestly we stan. π§
π₯ SEE ALSO π₯
Grab a snack bestie, this list is long and honestly she ate π β it's all from the 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_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_set_rxfh(9)i40e_get_priv_flags(9)i40e_set_priv_flags(9)i40e_get_module_info(9)i40e_get_module_eeprom(9)
Like, that's the whole friend group. Go read them if you wanna be in the know. Iykyk. π«Ά
And that's a wrap, bestie! This page came straight outta ./drivers/net/ethernet/intel/i40e, dated October 2026, from the Kernel API Manual β so you know it's the real deal. Mwah, slay, go copy those TC stats responsibly ππβ¨
π¦ 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