nfp_net_rx_ring_bufs_free(9)
β¨ nfp_net_rx_ring_bufs_free(9) β¨
okay so bestie, welcome to the Kernel API Manual π
this one's a little function with a big job and honestly it does exactly what it says on the tin β it's nfp_net_rx_ring_bufs_free, and it's here to clean up the RX ring. let's get into it π§
π NAME π
nfp_net_rx_ring_bufs_free β frees any buffers that are currently hanging out on the RX ring π«Ά like, they're done, they're being sent home, bye π
πΈ SYNOPSIS πΈ
void nfp_net_rx_ring_bufs_free (struct nfp_net_dp *dp , struct
nfp_net_rx_ring *rx_ring );
no return value, it's a void girlie β it just does the thing and dips β¨
π¦ ARGUMENTS π¦
dpβ the NFP Net data path struct π this is your main character struct, the big picture.rx_ringβ the RX ring you wanna remove buffers from π like, the specific one, pls be specific.
π DESCRIPTION π
so here's the vibe check: this function assumes the device is stopped and that the buffers are sitting in the [0, ring->cnt - 1) entries π no cap, that's the arrangement it expects.
and then β this part matters bestie β once the device is disabled, you must call nfp_net_rx_ring_reset to restore the required ring geometry. like, not optional, not a suggestion, it's giving required-esque π don't skip it fr fr.
β οΈ reminder: device stopped β buffers in[0, ring->cnt - 1)β and after disabling, callnfp_net_rx_ring_resetto restore ring geometry β that's the whole deal π
π SEE ALSO π
- Kernel file
./drivers/net/ethernet/netronome/nfp/nfp_net_dp.cπ nfp_net_rx_alloc_one(9)nfp_net_tx_ring_init(9)nfp_net_rx_ring_init(9)nfp_net_rx_ring_reset(9)nfp_net_rx_ring_bufs_alloc(9)nfp_net_rx_ring_free(9)nfp_net_rx_ring_alloc(9)
like, the whole little friend group of ring functions, go read them all, iykyk π β¨
and that's the page bb π this lil icon came from ./drivers/net/ethernet/netrono... and it's dated October 2026 β mwah, slay, go free those buffers responsibly π₯ππ¦
π¦ 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