free_tx_desc(9)
π free_tx_desc(9) β your Kernel API Manual bestie π
πΈ NAME πΈ
free_tx_desc β reclaims TX descriptors and their buffers. That's literally the whole vibe: reclaiming TX descriptors and their buffers, no cap π
β¨ SYNOPSIS β¨
Okay bestie, here's the signature, copy-paste energy only:
void free_tx_desc (struct adapter *adapter , struct sge_txq *tq ,
unsigned int n , bool unmap );
π ARGUMENTS π
These are the little cuties you pass in:
adapterβ the adapter β¨tqβ the TX queue to reclaim descriptors from πnβ the number of descriptors to reclaim π’unmapβ whether the buffers should be unmapped for DMA π¦
π¦ DESCRIPTION π¦
Okay so real talk: free_tx_desc reclaims TX descriptors from an SGE TX queue and frees the associated TX buffers. It's called with the TX queue lock held β that lock detail is giving βdo not forgetβ energy, fr fr. Periodt π
π SEE ALSO π
Kernel file squad plus the whole reference friend group:
- Kernel file
./drivers/net/ethernet/chelsio/cxgb4vf/sge.c get_buf_addr(9)is_buf_mapped(9)need_skb_unmap(9)txq_avail(9)fl_cap(9)fl_starving(9)map_skb(9)reclaim_completed_tx(9)get_buf_size(9)free_rx_bufs(9)unmap_rx_buf(9)ring_fl_db(9)set_rx_sw_desc(9)refill_fl(9)alloc_ring(9)sgl_len(9)flits_to_desc(9)is_eth_imm(9)calc_tx_flits(9)write_sgl(9)ring_tx_db(9)inline_tx_skb(9)t4vf_eth_xmit(9)copy_frags(9)t4vf_pktgl_to_skb(9)t4vf_pktgl_free(9)do_gro(9)t4vf_ethrx_handler(9)is_new_response(9)restore_rx_bufs(9)rspq_next(9)process_responses(9)napi_rx_handler(9)t4vf_intr_handler(9)sge_rx_timer_cb(9)sge_tx_timer_cb(9)bar2_address(9)t4vf_sge_alloc_rxq(9)t4vf_sge_alloc_eth_txq(9)t4vf_free_sge_resources(9)t4vf_sge_start(9)t4vf_sge_stop(9)t4vf_sge_init(9)
Source/version cute sign-off: this page comes from ./drivers/net/ethernet/chelsio..., dated October 2026, and it's literally free_tx_desc(9) β 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