axienet_eth...set_coalesce(9)
π NAME π
axienet_ethtools_set_coalesce β okay so this is the function that sets the DMA interrupt coalescing count. That's it, that's the whole name, slay β¨
(this one lives in the Kernel API Manual, just so you know what you're reading π«Ά)
πΈ SYNOPSIS πΈ
int axienet_ethtools_set_coalesce (struct net_device *ndev , struct
ethtool_coalesce *ecoalesce , struct kernel_ethtool_coalesce
*kernel_coal , struct netlink_ext_ack *extack );
Bestie look at that signature. Four pointers. Four. It's giving "my function takes the whole friend group" energy π
π ARGUMENTS π
ndevβ pointer tonet_devicestructure. yes the classic. the main character of netdev land πecoalesceβ pointer toethtool_coalescestructurekernel_coalβ ethtool CQE mode setting structureextackβ extack for reporting error messages. it's the one who tells you what went wrong, very considerate of it ngl π
π¦ DESCRIPTION π¦
So what does this actually do? It implements the ethtool command for setting the DMA interrupt coalescing count on the Tx and Rx paths. Both. Not one. Both. periodt π
And here's the fun part β you can trigger this whole thing from your linux prompt by running:
ethtool -C ethX rx-frames 5
That's literally the incantation. Type it, and this function wakes up and does its thing. iconic behavior honestly π
β RETURN β
0β on success π- Non-zero error value β on failure π
(no in-between, no "maybe", it's a yes or a no and I respect the commitment)
π₯ SEE ALSO π₯
Okay this list is long long. Like, this function knows everybody. But every single one of them deserves their moment, so here we go, no skipping, no cap π«Ά
First, the source file itself:
- Kernel file
./drivers/net/ethernet/xilinx/xilinx_axienet_main.c
Now the whole extended friend group:
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_tx_poll(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_dma_err_handler(9),axienet_probe(9)
See? Everybody. Literally everybody showed up to the function's party π
ngl if you're poking at coalescing counts in a Xilinx AXI Ethernet driver, you already know what you're doing β this page is just here to hype you up while you do it π
and that's the wrap, bestie π§ this little page came from ./drivers/net/ethernet/xilinx, dated October 2026, and it'll be right here whenever you need it again. mwah π
π¦ 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