i40e_pf_rxq_wait(9)
π i40e_pf_rxq_wait π
okay so real talk: this page is from the Kernel API Manual, and the star of the show is i40e_pf_rxq_wait(9) β yes bestie, that's the whole manual reference, and we're gonna get into it π
β¨ NAME β¨
i40e_pf_rxq_wait β wait for a PF's Rx queue to be enabled or disabled. that's it, that's the whole job π¦
πΈ SYNOPSIS πΈ
int i40e_pf_rxq_wait (struct i40e_pf *pf , int pf_q , bool enable );
π ARGUMENTS π
pfβ the PF being configured. yeah, the whole big port-function situation πpf_qβ the PF queue. literally the specific queue we're stressing about.enableβ enable or disable state of the queue. so: which direction are we waiting for? that's the vibe check π₯
π DESCRIPTION π
okay so here's the tea β β this routine will wait for the given Rx queue of the PF to reach the enabled or disabled state. it does not do the enabling. it does not do the disabling. it simply sits there, patiently, like a bestie holding your bag, until the queue gets its life together β¨
and if the queue never gets there? not it. The function returns -ETIMEDOUT in case of failing to reach the requested state after multiple retries π β yes, multiple retries, it really did try.
Else, it'll return 0 in case of success. slay π
hmm just so we're clear:-ETIMEDOUT= it gave up after multiple retries.0= success. no cap, that's the whole return story π«Ά
π SEE ALSO π
first up, the actual source of truth, the main character itself:
- Kernel file
./drivers/net/ethernet/intel/i40e/i40e_main.cπ§
and now, bestieβ¦ the full squad. everybody in the group chat. no skips, no cuts, the entire list, periodt π
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_get_netdev_stats_struct(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_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)
fr fr that's all of them π
and that's the whole page bestie β¨π this lil artifact lives at ./drivers/net/ethernet/intel/i40e, dated October 2026, and it's filed under i40e_pf_rxq_wait(9) β go wait on a queue responsibly, ily π«Άπ
π¦ 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