inline_tx_skb(9)
π inline_tx_skb(9) β the kernel API manual, bestie edition π
okay so bestie, you opened a section 9 man page (that's the kernel API manual, iykyk) and it's called inline_tx_skb β get comfy, this one's a little technical but we're gonna slay it together π«Ά
β¨ NAME β¨
inline_tx_skb β literally just inlining a packet's data straight into the TX descriptors π
π¦ SYNOPSIS π¦
void inline_tx_skb (const struct sk_buff *skb , const struct sge_txq *tq
, void *pos );
π ARGUMENTS π
skbβ the packet, periodt. this is the actual data we're about to shove into the ring πΈtqβ the TX queue where the packet will be inlined πposβ the starting position in the TX queue to inline the packet. that's the starting point, your home base, the place where it all begins β¨
π DESCRIPTION π
so here's the vibe: inline_tx_skb inlines a packet's contents directly into the TX descriptors, starting at the given position within the TX DMA ring β no middleman, no extra hop, just straight in π₯
and like... most of the complexity of this whole operation? it's dealing with wrap arounds that can happen in the middle of the packet we want to inline π that's the main character energy of this function honestly. the ring wraps, the packet doesn't care, and somebody's gotta handle it π§
π SEE ALSO π
kernel file ./drivers/net/ethernet/chelsio/cxgb4vf/sge.c β like, the whole friend group lives there:
get_buf_addr(9), is_buf_mapped(9), need_skb_unmap(9), txq_avail(9), fl_cap(9), fl_starving(9), map_skb(9), free_tx_desc(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), 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)
like, obsessed with how long that list is ngl π every single one of them, no skips, we read the whole group chat π€
π‘ quick reminder bestie: this page comes from the source path ./drivers/net/ethernet/chelsio... and the date on it is October 2026 β so yeah, it's giving future energy β
and that's a wrap on inline_tx_skb(9)! go forth and inline responsibly, bestie β the wrap arounds are watching ππ
π¦ 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