i40e_get_net...stats_struct(9)
πΈ i40e_get_netdev_stats_struct(9) β the Kernel API Manual, section 9, bestie π
okay so this is a page from the Kernel API Manual, section 9, and today's main character is i40e_get_netdev_stats_struct. She's short, she's sweet, she's got a lot of friends in the SEE ALSO (like, an unreasonable amount of friends, we'll get there π).
β¨ NAME β¨
i40e_get_netdev_stats_struct β Get statistics for netdev interface π
π¦ SYNOPSIS π¦
void i40e_get_netdev_stats_struct (struct net_device *netdev , struct
rtnl_link_stats64 *stats );
π ARGUMENTS π
netdevβ the network interface device structure. it's giving "which interface are we talking about" energy π«Άstatsβ the data structure where the statistics get stored. the lil home where the numbers live π
π DESCRIPTION π
So the deal is: this one returns the address of the device statistics structure. That's what the page says, fr fr β literally "returns the address of the device statistics structure."
And the tea β about when the numbers are real: the statistics are actually updated from the service task. so like, this isn't the thing doing the updating, bestie β that's somebody else's job (iykyk, go peek at the SEE ALSO).
ok and yes, the synopsis says void while the description talks about returning an address β not me starting drama, I'm just relaying exactly what the page says π
π SEE ALSO π
right so. buckle up. this function knows everybody. the kernel file it lives in:
Kernel file ./drivers/net/ethernet/intel/i40e/i40e_main.c
and now the full guest list, no plus-ones skipped π
i40e_hw_to_dev(9)i40e_allocate_dma_mem(9)i40e_free_dma_mem(9)i40e_allocate_virt_mem(9)i40e_free_virt_mem(9)i40e_get_lump(9)i40e_put_lump(9)i40e_find_vsi_from_id(9)i40e_service_event_schedule(9)i40e_tx_timeout(9)i40e_get_vsi_stats_struct(9)i40e_get_netdev_stats_struct_tx(9)i40e_vsi_reset_stats(9)i40e_pf_reset_stats(9)i40e_compute_pci_to_hw_id(9)i40e_stat_update64(9)i40e_stat_update48(9)i40e_stat_update32(9)i40e_stat_update_and_clear32(9)i40e_stats_update_rx_discards(9)i40e_update_eth_stats(9)i40e_update_veb_stats(9)i40e_update_vsi_stats(9)i40e_update_pf_stats(9)i40e_update_stats(9)i40e_count_all_filters(9)i40e_count_active_filters(9)i40e_find_filter(9)i40e_find_mac(9)i40e_is_vsi_in_vlan(9)i40e_correct_mac_vlan_filters(9)i40e_get_vf_new_vlan(9)i40e_correct_vf_mac_vlan_filters(9)i40e_rm_default_mac_filter(9)i40e_add_filter(9)__i40e_del_filter(9)i40e_add_mac_filter(9)i40e_del_mac_filter(9)i40e_set_mac(9)i40e_config_rss_aq(9)i40e_vsi_config_rss(9)i40e_vsi_setup_queue_map_mqprio(9)i40e_vsi_setup_queue_map(9)i40e_addr_sync(9)i40e_addr_unsync(9)i40e_set_rx_mode(9)i40e_undo_del_filter_entries(9)i40e_undo_add_filter_entries(9)i40e_next_filter(9)i40e_update_filter_state(9)i40e_aqc_del_filters(9)i40e_aqc_add_filters(9)i40e_aqc_broadcast_filter(9)i40e_set_promiscuous(9)i40e_sync_vsi_filters(9)i40e_sync_filters_subtask(9)i40e_calculate_vsi_rx_buf_len(9)i40e_max_vsi_frame_size(9)i40e_change_mtu(9)i40e_vlan_stripping_enable(9)i40e_vlan_stripping_disable(9)i40e_add_vlan_all_mac(9)i40e_vsi_add_vlan(9)i40e_rm_vlan_all_mac(9)i40e_vsi_kill_vlan(9)i40e_vlan_rx_add_vid(9)i40e_vlan_rx_add_vid_up(9)i40e_vlan_rx_kill_vid(9)i40e_restore_vlan(9)i40e_vsi_add_pvid(9)i40e_vsi_remove_pvid(9)i40e_vsi_setup_tx_resources(9)i40e_vsi_free_tx_resources(9)i40e_vsi_setup_rx_resources(9)i40e_vsi_free_rx_resources(9)i40e_config_xps_tx_ring(9)i40e_xsk_pool(9)i40e_configure_tx_ring(9)i40e_rx_offset(9)i40e_configure_rx_ring(9)i40e_vsi_configure_tx(9)i40e_vsi_configure_rx(9)i40e_vsi_config_dcb_rings(9)i40e_set_vsi_rx_mode(9)i40e_reset_fdir_filter_cnt(9)i40e_fdir_filter_restore(9)i40e_vsi_configure(9)i40e_vsi_configure_msix(9)i40e_enable_misc_int_causes(9)i40e_configure_msi_and_legacy(9)i40e_irq_dynamic_disable_icr0(9)i40e_irq_dynamic_enable_icr0(9)i40e_msix_clean_rings(9)i40e_irq_affinity_notify(9)i40e_irq_affinity_release(9)i40e_vsi_request_irq_msix(9)i40e_vsi_disable_irq(9)i40e_vsi_enable_irq(9)i40e_free_misc_vector(9)i40e_intr(9)i40e_clean_fdir_tx_irq(9)i40e_fdir_clean_ring(9)i40e_map_vector_to_qp(9)i40e_vsi_map_rings_to_vectors(9)i40e_vsi_request_irq(9)i40e_netpoll(9)i40e_pf_txq_wait(9)i40e_control_tx_q(9)i40e_control_wait_tx_q(9)i40e_vsi_enable_tx(9)i40e_pf_rxq_wait(9)i40e_control_rx_q(9)i40e_control_wait_rx_q(9)i40e_vsi_enable_rx(9)i40e_vsi_start_rings(9)i40e_vsi_stop_rings(9)i40e_vsi_stop_rings_no_wait(9)i40e_vsi_free_irq(9)i40e_free_q_vector(9)i40e_vsi_free_q_vectors(9)i40e_reset_interrupt_capability(9)i40e_clear_interrupt_scheme(9)i40e_napi_enable_all(9)i40e_napi_disable_all(9)i40e_vsi_close(9)i40e_quiesce_vsi(9)i40e_unquiesce_vsi(9)i40e_pf_quiesce_all_vsi(9)i40e_pf_unquiesce_all_vsi(9)i40e_vsi_wait_queues_disabled(9)i40e_pf_wait_queues_disabled(9)i40e_get_iscsi_tc_map(9)i40e_dcb_get_num_tc(9)i40e_dcb_get_enabled_tc(9)i40e_mqprio_get_enabled_tc(9)i40e_pf_get_num_tc(9)i40e_pf_get_tc_map(9)i40e_vsi_get_bw_info(9)i40e_vsi_configure_bw_alloc(9)i40e_vsi_config_netdev_tc(9)i40e_vsi_update_queue_map(9)i40e_update_adq_vsi_queues(9)i40e_vsi_config_tc(9)i40e_vsi_reconfig_tc(9)i40e_get_link_speed(9)i40e_bw_bytes_to_mbits(9)i40e_set_bw_limit(9)i40e_remove_queue_channels(9)i40e_get_max_queues_for_channel(9)i40e_validate_num_queues(9)i40e_vsi_reconfig_rss(9)i40e_channel_setup_queue_map(9)i40e_add_channel(9)i40e_channel_config_tx_ring(9)i40e_setup_hw_channel(9)i40e_setup_channel(9)i40e_validate_and_set_switch_mode(9)i40e_create_queue_channel(9)i40e_configure_queue_channels(9)i40e_veb_config_tc(9)i40e_dcb_reconfigure(9)i40e_resume_port_tx(9)i40e_suspend_port_tx(9)i40e_hw_set_dcb_config(9)i40e_hw_dcb_config(9)i40e_dcb_sw_default_config(9)i40e_init_pf_dcb(9)i40e_print_link_message(9)i40e_up_complete(9)i40e_vsi_reinit_locked(9)i40e_force_link_state(9)i40e_up(9)i40e_down(9)i40e_validate_mqprio_qopt(9)i40e_vsi_set_default_tc_config(9)i40e_del_macvlan_filter(9)i40e_add_macvlan_filter(9)i40e_reset_ch_rings(9)i40e_free_macvlan_channels(9)i40e_fwd_ring_up(9)i40e_setup_macvlans(9)i40e_fwd_add(9)i40e_del_all_macvlans(9)i40e_fwd_del(9)i40e_setup_tc(9)i40e_set_cld_element(9)i40e_add_del_cloud_filter(9)i40e_add_del_cloud_filter_big_buf(9)i40e_parse_cls_flower(9)i40e_handle_tclass(9)i40e_configure_clsflower(9)i40e_find_cloud_filter(9)i40e_delete_clsflower(9)i40e_setup_tc_cls_flower(9)i40e_open(9)i40e_netif_set_realnum_tx_rx_queues(9)i40e_vsi_open(9)i40e_fdir_filter_exit(9)i40e_cloud_filter_exit(9)i40e_close(9)i40e_do_reset(9)i40e_dcb_need_reconfig(9)i40e_handle_lldp_event(9)i40e_do_reset_safe(9)i40e_handle_lan_overflow_event(9)i40e_get_current_fd_count(9)i40e_get_global_fd_count(9)i40e_reenable_fdir_sb(9)i40e_reenable_fdir_atr(9)i40e_delete_invalid_filter(9)i40e_fdir_check_and_reenable(9)i40e_fdir_flush_and_replay(9)i40e_get_current_atr_cnt(9)i40e_fdir_reinit_subtask(9)i40e_vsi_link_event(9)i40e_veb_link_event(9)i40e_link_event(9)i40e_watchdog_subtask(9)i40e_reset_subtask(9)i40e_handle_link_event(9)i40e_clean_adminq_subtask(9)i40e_verify_eeprom(9)i40e_enable_pf_switch_lb(9)i40e_disable_pf_switch_lb(9)i40e_config_bridge_mode(9)i40e_reconstitute_veb(9)i40e_get_capabilities(9)i40e_fdir_sb_setup(9)i40e_fdir_teardown(9)i40e_rebuild_cloud_filters(9)i40e_rebuild_channels(9)i40e_clean_xps_state(9)i40e_prep_for_reset(9)i40e_send_version(9)i40e_get_oem_version(9)i40e_reset(9)i40e_rebuild(9)i40e_reset_and_rebuild(9)i40e_handle_reset_warning(9)i40e_print_vf_mdd_event(9)i40e_print_vfs_mdd_events(9)i40e_handle_mdd_event(9)i40e_service_task(9)i40e_service_timer(9)i40e_set_num_rings_in_vsi(9)i40e_vsi_alloc_arrays(9)i40e_vsi_mem_alloc(9)i40e_vsi_free_arrays(9)i40e_clear_rss_config_user(9)i40e_vsi_clear(9)i40e_vsi_clear_rings(9)i40e_alloc_rings(9)i40e_reserve_msix_vectors(9)i40e_init_msix(9)i40e_vsi_alloc_q_vector(9)i40e_vsi_alloc_q_vectors(9)i40e_init_interrupt_scheme(9)i40e_restore_interrupt_scheme(9)i40e_setup_misc_vector_for_recovery_mode(9)i40e_setup_misc_vector(9)i40e_get_rss_aq(9)i40e_config_rss_reg(9)i40e_get_rss_reg(9)i40e_config_rss(9)i40e_get_rss(9)i40e_fill_rss_lut(9)i40e_pf_config_rss(9)i40e_reconfig_rss_queues(9)i40e_get_partition_bw_setting(9)i40e_set_partition_bw_setting(9)i40e_is_total_port_shutdown_enabled(9)i40e_sw_init(9)i40e_set_ntuple(9)i40e_clear_rss_lut(9)i40e_set_loopback(9)i40e_set_features(9)i40e_ndo_fdb_add(9)i40e_ndo_bridge_setlink(9)i40e_ndo_bridge_getlink(9)i40e_features_check(9)i40e_xdp_setup(9)i40e_enter_busy_conf(9)i40e_exit_busy_conf(9)i40e_queue_pair_reset_stats(9)i40e_queue_pair_clean_rings(9)i40e_queue_pair_toggle_napi(9)i40e_queue_pair_toggle_rings(9)i40e_queue_pair_enable_irq(9)i40e_queue_pair_disable_irq(9)i40e_queue_pair_disable(9)i40e_queue_pair_enable(9)i40e_xdp(9)i40e_config_netdev(9)i40e_vsi_delete(9)i40e_is_vsi_uplink_mode_veb(9)i40e_add_vsi(9)i40e_vsi_release(9)i40e_vsi_setup_vectors(9)i40e_vsi_reinit_setup(9)i40e_vsi_setup(9)i40e_veb_get_bw_info(9)i40e_veb_mem_alloc(9)i40e_switch_branch_release(9)i40e_veb_clear(9)i40e_veb_release(9)i40e_add_veb(9)i40e_veb_setup(9)i40e_setup_pf_switch_element(9)i40e_fetch_switch_configuration(9)i40e_setup_pf_switch(9)i40e_determine_queue_usage(9)i40e_setup_pf_filter_control(9)i40e_get_platform_mac_addr(9)i40e_set_fec_in_flags(9)i40e_check_recovery_mode(9)i40e_pf_loop_reset(9)i40e_check_fw_empr(9)i40e_handle_resets(9)i40e_init_recovery_mode(9)i40e_set_subsystem_device_id(9)i40e_probe(9)i40e_remove(9)i40e_enable_mc_magic_wake(9)i40e_io_suspend(9)i40e_io_resume(9)i40e_pci_error_detected(9)i40e_pci_error_slot_reset(9)i40e_pci_error_reset_prepare(9)i40e_pci_error_reset_done(9)i40e_pci_error_resume(9)i40e_shutdown(9)i40e_suspend(9)i40e_resume(9)i40e_init_module(9)i40e_exit_module(9)
like. that's the whole friend group. genuinely obsessed with the range π«Ά
and that's the page!! no cap, that's everything π
mwah π β this cutie came from the source tree at ./drivers/net/ethernet/intel/i40e, and she was dated October 2026. bye bestie, go read your stats πβ¨
π¦ 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