nfp_nfd3_tx_tso(9)
π¦ nfp_nfd3_tx_tso(9) π¦
okay so bestie, this lil page comes straight out of the Kernel API Manual and it's all about setting up a Tx descriptor for LSO. yes, that's the whole vibe. let's get into it π
β¨ NAME β¨
nfp_nfd3_tx_tso β Set up Tx descriptor for LSO π
πΈ SYNOPSIS πΈ
void nfp_nfd3_tx_tso (struct nfp_net_r_vector *r_vec , struct
nfp_nfd3_tx_buf *txbuf , struct nfp_nfd3_tx_desc *txd , struct sk_buff
*skb , u32 md_bytes );
it's giving void function, five args, zero drama β¨
π ARGUMENTS π
r_vecβ the per-ring structure, like the ring's whole personality π«Άtxbufβ Pointer to driver soft TX descriptor (the soft one, the vibes one)txdβ Pointer to HW TX descriptor (the hardware one, main character energy π)skbβ Pointer to SKB πΈmd_bytesβ Prepend length, lowkey important
π DESCRIPTION π
So what it does: Set up Tx descriptor for LSO, and for non-LSO skbs it does absolutely nothing β not a single thing, no cap, it just minds its business π
And it'll return error on packet header greater than maximum supported LSO header size. so if your header is too thicc for the max supported LSO header size, it's not gonna slay, it's gonna error π
π₯ SEE ALSO π₯
Kernel file ./drivers/net/ethernet/netronome/nfp/nfd3/dp.c β go read the source bestie, iykyk
nfp_nfd3_tx_ring_stop(9)nfp_nfd3_tx_csum(9)nfp_nfd3_tx(9)nfp_nfd3_tx_complete(9)nfp_nfd3_rx_give_one(9)nfp_nfd3_rx_ring_fill_freelist(9)nfp_nfd3_rx_csum_has_errors(9)nfp_nfd3_rx_csum(9)nfp_nfd3_rx(9)nfp_nfd3_poll(9)
and that's the whole page, periodt π it's sourced from ./drivers/net/ethernet/netrono..., dated October 2026, and it's nfp_nfd3_tx_tso(9) β stan the manpage, bye bestie πβ¨π¦
π¦ 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