ixgbe_update_rx_ring_stats(9)
π ixgbe_update_rx_ring_stats β the Kernel API Manual glow-up
okay so real talk, bestie: this little function lives in the Kernel API Manual (that's the manual name, and yes she's serving kernel-doc energy π). Her whole personality? Updating the counters for one specific Rx ring. That's it. That's the girl. No cap, sometimes the most iconic thing you can do is just increment a number the right way. β¨
πΈ NAME
ixgbe_update_rx_ring_stats β update Rx ring specific counters π
like, specifically rx ring counters. not all the counters. hers. periodt.
π¦ SYNOPSIS
void ixgbe_update_rx_ring_stats (struct ixgbe_ring *rx_ring , struct
ixgbe_q_vector *q_vector , u64 pkts , u64 bytes );
returns void, so nobody's gonna come back at you with an error code. she just does the thing and dips π«Ά
π ARGUMENTS
rx_ringβ the ring to update π like, the actual star of the show, thestruct ixgbe_ringreceiving the new statsq_vectorβ the queue vector that ring belongs to π§ her plus-one, thestruct ixgbe_q_vectorshe's associated withpktsβ number of processed packets π¦ au64, so go ahead and count big, she can hold itbytesβ number of processed bytes π also au64, also not scared of a big number, we love a size-queen data type
lowkey the whole flow is: you hand her a ring, its q_vector, and the packet + byte counts you already tallied, and she makes the stats happen. no drama, no return value, no notes π
π₯ SEE ALSO
the friend group π β and bestie there are so many of them, every single one gets their moment:
- written in the kernel file
./drivers/net/ethernet/intel/ixgbe/ixgbe_main.cπ (that's her literal home address) ixgbe_pcie_from_parent(9),ixgbe_read_reg(9),ixgbe_set_ivar(9),ixgbe_get_vf_idx(9),ixgbe_tx_timeout_reset(9),ixgbe_tx_maxrate(9),ixgbe_update_tx_ring_stats(9)(her tx sister!! π―),ixgbe_pf_handle_tx_hang(9),ixgbe_vf_handle_tx_hang(9),ixgbe_check_illegal_queue(9),ixgbe_handle_mdd_event(9)ixgbe_clean_tx_irq(9),ixgbe_rx_is_fcoe(9),ixgbe_rx_checksum(9),ixgbe_alloc_rx_buffers(9),ixgbe_process_skb_fields(9),ixgbe_is_non_eop(9),ixgbe_pull_tail(9),ixgbe_dma_sync_frag(9),ixgbe_cleanup_headers(9),ixgbe_reuse_rx_page(9),ixgbe_add_rx_frag(9),ixgbe_clean_rx_irq(9)ixgbe_configure_msix(9),ixgbe_update_itr(9),ixgbe_write_eitr(9),ixgbe_check_overtemp_subtask(9),ixgbe_check_phy_fw_load(9),ixgbe_check_module_power(9),ixgbe_check_link_cfg_err(9),ixgbe_process_link_status_event(9),ixgbe_handle_link_status_event(9),ixgbe_schedule_fw_event(9),ixgbe_aci_event_cleanup(9),ixgbe_handle_fw_event(9)ixgbe_irq_enable(9),ixgbe_poll(9),ixgbe_request_msix_irqs(9),ixgbe_intr(9),ixgbe_request_irq(9),ixgbe_irq_disable(9),ixgbe_configure_msi_and_legacy(9),ixgbe_configure_tx_ring(9),ixgbe_configure_tx(9),ixgbe_rss_indir_tbl_entries(9),ixgbe_store_key(9),ixgbe_init_rss_key(9),ixgbe_store_reta(9),ixgbe_store_vfreta(9)ixgbe_configure_rscctl(9),ixgbe_configure_rx(9),ixgbe_vlan_strip_disable(9),ixgbe_vlan_strip_enable(9),ixgbe_write_mc_addr_list(9),ixgbe_set_rx_mode(9),ixgbe_configure_dcb(9),ixgbe_hpbthresh(9),ixgbe_lpbthresh(9),ixgbe_clean_rx_ring(9),ixgbe_enable_link_status_events(9),ixgbe_disable_link_status_events(9)ixgbe_sfp_link_config(9),ixgbe_non_sfp_link_config(9),ixgbe_check_media_subtask(9),ixgbe_clear_vf_stats_counters(9),ixgbe_clean_tx_ring(9),ixgbe_clean_all_rx_rings(9),ixgbe_clean_all_tx_rings(9),ixgbe_set_eee_capable(9),ixgbe_tx_timeout(9),ixgbe_sw_init(9),ixgbe_setup_tx_resources(9),ixgbe_setup_all_tx_resources(9)ixgbe_setup_rx_resources(9),ixgbe_setup_all_rx_resources(9),ixgbe_free_tx_resources(9),ixgbe_free_all_tx_resources(9),ixgbe_free_rx_resources(9),ixgbe_free_all_rx_resources(9),ixgbe_max_xdp_frame_size(9),ixgbe_change_mtu(9),ixgbe_open(9),ixgbe_close(9),ixgbe_update_stats(9),ixgbe_fdir_reinit_subtask(9),ixgbe_check_hang_subtask(9)ixgbe_watchdog_update_link(9),ixgbe_watchdog_link_is_up(9),ixgbe_watchdog_link_is_down(9),ixgbe_watchdog_flush_tx(9),ixgbe_watchdog_subtask(9),ixgbe_sfp_detection_subtask(9),ixgbe_sfp_link_config_subtask(9),ixgbe_service_timer(9),ixgbe_check_fw_error(9),ixgbe_service_task(9),ixgbe_set_mac(9),ixgbe_add_sanmac_netdev(9),ixgbe_del_sanmac_netdev(9)ixgbe_validate_rtr(9),ixgbe_set_prio_tc_map(9),ixgbe_setup_tc(9),ixgbe_configure_bridge_mode(9),ixgbe_irq_disable_single(9),ixgbe_txrx_ring_disable(9),ixgbe_txrx_ring_enable(9),ixgbe_enumerate_functions(9),ixgbe_wol_supported(9),ixgbe_set_fw_version_e610(9),ixgbe_set_fw_version(9),ixgbe_recovery_probe(9)ixgbe_probe(9),ixgbe_remove(9),ixgbe_io_error_detected(9),ixgbe_io_slot_reset(9),ixgbe_io_resume(9),ixgbe_init_module(9),ixgbe_exit_module(9)
and that's the whole page, bestie ππ¦ okay one last thing β the source line at the bottom is literally ./drivers/net/ethernet/intel/i... (yes, it's truncated, she's mysterious like that π) and the date is October 2026, so mark your calendar and stan πβ¨π
π¦ 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