axienet_tx_poll(9)
π axienet_tx_poll(9) β or, the Kernel API Manual page your group chat has been waiting for
okay so bestie, we're in the Kernel API Manual today and this one is a whole little function about telling the network stack "hey, that packet actually went out, you can have your stuff back now" π
β¨ NAME β¨
axienet_tx_poll β gets called once a transmit is completed by the Axi DMA Tx channel. that's it, that's the vibe π
πΈ SYNOPSIS πΈ
int axienet_tx_poll (struct napi_struct *napi , int budget );
π¦ ARGUMENTS π¦
napiβ a pointer to the NAPI structure. yes bestie, an actual pointer, handle with care πbudgetβ the max number of TX packets to process. it's giving "how much are we willing to do in one sitting" energy β
π RETURN π
- The number of TX packets processed. literally just the count, no drama π
π₯ DESCRIPTION π₯
so this function gets invoked from the NAPI processing, right, and its whole job is to notify that the transmit operation is done π
then it clears fields in the corresponding Tx BDs β yes, those BDs β and unmaps the corresponding buffer so that the CPU can regain ownership of the buffer. the CPU was waiting for its stuff back and now it's got it, we love a handoff π«Ά
and finally, it invokes netif_wake_queue to restart transmission if required. if required, bestie. only then. no cap β¨
π SEE ALSO π
lowkey the longest friend list ever, and every single one of them is here:
- Kernel file
./drivers/net/ethernet/xilinx/xilinx_axienet_main.cπ axienet_dma_in32(9)axienet_dma_bd_release(9)axienet_calc_cr(9)axienet_coalesce_params(9)axienet_dma_start(9)axienet_dma_bd_init(9)axienet_set_mac_address(9)netdev_set_mac_address(9)axienet_set_multicast_list(9)axienet_setoptions(9)axienet_dma_stop(9)axienet_device_reset(9)axienet_free_tx_chain(9)axienet_check_tx_bd_space(9)axienet_dma_tx_cb(9)axienet_start_xmit_dmaengine(9)axienet_start_xmit(9)axienet_dma_rx_cb(9)axienet_rx_poll(9)axienet_tx_irq(9)axienet_rx_irq(9)axienet_eth_irq(9)axienet_rx_submit_desc(9)axienet_init_dmaengine(9)axienet_init_legacy_dma(9)axienet_open(9)axienet_stop(9)axienet_change_mtu(9)axienet_poll_controller(9)axienet_ethtools_get_drvinfo(9)axienet_ethtools_get_regs_len(9)axienet_ethtools_get_regs(9)axienet_ethtools_get_pauseparam(9)axienet_ethtools_set_pauseparam(9)axienet_update_coalesce_rx(9)axienet_dim_coalesce_count_rx(9)axienet_rx_dim_work(9)axienet_update_coalesce_tx(9)axienet_ethtools_get_coalesce(9)axienet_ethtools_set_coalesce(9)axienet_dma_err_handler(9)axienet_probe(9)
and that's the whole page, bestie π this lil icon came from ./drivers/net/ethernet/xilinx, dated October 2026 β go drink some water, you ate ππ§
π¦ 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