iavf_tx_timeout(9)
π iavf_tx_timeout β the "your Tx queue is having a moment" handler
okay so real talk, this page lives in the Kernel API Manual, section 9, and the star of the show is iavf_tx_timeout. Yes bestie, it's exactly what it sounds like: something in the transmit path went quiet for too long and now this function gets to deal with it. π«Ά
β¨ NAME β¨
iavf_tx_timeout β literally the "respond to a Tx Hang" girlie. That's the whole job description, no cap.
πΈ SYNOPSIS πΈ
void iavf_tx_timeout (struct net_device *netdev , unsigned int txqueue );
That's it. That's the signature. Two args, zero drama (well, some drama, see below). π₯
π¦ ARGUMENTS π¦
netdevβ the network interface device structure. you know, the whole netdev situation this hang is happening on. main character energy. πtxqueueβ the queue number that is timing out. like, specifically this one. not the others. this one's being extra. π
ngl, a "Tx Hang" is the kernel's way of saying a transmit queue stopped making progress, and this function is the one that gets called to respond to it. No inventing extra behaviour here β the page says respond, so we respond. periodt.
π SEE ALSO π
the friend group. the whole group chat. everyone below is a (9) page, listed in the order the manual gives them, and yes, every single one is getting their moment. π
iavf_pdev_to_adapter(9),iavf_is_reset_in_progress(9),iavf_allocate_dma_mem_d(9),iavf_free_dma_mem(9),iavf_allocate_virt_mem(9),iavf_free_virt_mem(9),iavf_schedule_reset(9),iavf_schedule_aq_request(9)iavf_misc_irq_disable(9),iavf_misc_irq_enable(9),iavf_irq_disable(9),iavf_irq_enable_queues(9),iavf_irq_enable(9),iavf_msix_aq(9),iavf_msix_clean_rings(9)iavf_map_vector_to_rxq(9),iavf_map_vector_to_txq(9),iavf_map_rings_to_vectors(9),iavf_request_traffic_irqs(9),iavf_request_misc_irq(9),iavf_free_traffic_irqs(9),iavf_free_misc_irq(9)iavf_configure_tx(9),iavf_select_rx_desc_format(9),iavf_configure_rx(9)iavf_find_vlan(9),iavf_add_vlan(9),iavf_del_vlan(9),iavf_get_num_vlans_added(9),iavf_get_max_vlans_allowed(9),iavf_max_vlans_added(9),iavf_vlan_rx_add_vid(9),iavf_vlan_rx_kill_vid(9)iavf_find_filter(9),iavf_add_filter(9),iavf_replace_primary_mac(9),iavf_is_mac_set_handled(9),iavf_mac_change_done(9),iavf_set_mac_sync(9),iavf_set_mac(9),iavf_addr_sync(9),iavf_addr_unsync(9),iavf_promiscuous_mode_changed(9),iavf_set_rx_mode(9)iavf_napi_enable_all(9),iavf_napi_disable_all(9),iavf_configure(9),iavf_up_complete(9),iavf_clear_mac_filters(9),iavf_clear_cloud_filters(9),iavf_clear_fdir_filters(9),iavf_clear_adv_rss_conf(9),iavf_down(9)iavf_acquire_msix_vectors(9),iavf_free_queues(9),iavf_set_queue_vlan_tag_loc(9),iavf_alloc_queues(9),iavf_set_interrupt_capability(9)iavf_config_rss_aq(9),iavf_config_rss_reg(9),iavf_config_rss(9),iavf_fill_rss_lut(9),iavf_init_rss(9)iavf_alloc_q_vectors(9),iavf_free_q_vectors(9),iavf_reset_interrupt_capability(9),iavf_init_interrupt_scheme(9),iavf_free_interrupt_scheme(9),iavf_free_rss(9),iavf_reinit_interrupt_scheme(9)iavf_finish_config(9),iavf_schedule_finish_config(9),iavf_process_aq_command(9),iavf_set_vlan_offload_features(9),iavf_startup(9),iavf_init_version_check(9),iavf_parse_vf_resource_msg(9),iavf_init_get_resources(9)iavf_init_send_offload_vlan_v2_caps(9),iavf_init_recv_offload_vlan_v2_caps(9),iavf_init_send_supported_rxdids(9),iavf_init_recv_supported_rxdids(9),iavf_init_send_ptp_caps(9),iavf_init_recv_ptp_caps(9),iavf_init_process_extended_caps(9),iavf_init_config_adapter(9)iavf_disable_vf(9),iavf_reconfig_qs_bw(9),iavf_reset_step(9),iavf_adminq_task(9)iavf_free_all_tx_resources(9),iavf_setup_all_tx_resources(9),iavf_setup_all_rx_resources(9),iavf_free_all_rx_resources(9)iavf_validate_tx_bandwidth(9),iavf_validate_ch_config(9),iavf_del_all_cloud_filters(9),iavf_is_tc_config_same(9),__iavf_setup_tc(9),iavf_parse_cls_flower(9),iavf_handle_tclass(9),iavf_find_cf(9),iavf_configure_clsflower(9),iavf_delete_clsflower(9),iavf_setup_tc_cls_flower(9),iavf_add_cls_u32(9),iavf_del_cls_u32(9),iavf_setup_tc_cls_u32(9),iavf_setup_tc_block_cb(9),iavf_setup_tc(9),iavf_restore_fdir_filters(9)iavf_open(9),iavf_close(9),iavf_change_mtu(9),iavf_disable_fdir(9),iavf_set_features(9),iavf_features_check(9),iavf_get_netdev_vlan_hw_features(9),iavf_get_netdev_vlan_features(9),iavf_fix_netdev_vlan_features(9),iavf_fix_strip_features(9),iavf_fix_features(9),iavf_check_reset_complete(9),iavf_process_config(9),iavf_probe(9),iavf_suspend(9),iavf_resume(9),iavf_remove(9),iavf_shutdown(9),iavf_init_module(9),iavf_exit_module(9)
also, the source file itself is a whole vibe: ./drivers/net/ethernet/intel/iavf/iavf_main.c β that's where you go if you want the actual lore. π
that's the whole page bestie, no filler, no skipped lines. π
signing off: this one came from the source tree at ./drivers/net/ethernet/intel/iavf, dated October 2026, and it's the iavf_tx_timeout(9) page β mwah, slay, go fix that transmit queue. π
β¨
π¦ 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