is_buf_mapped(9)
π is_buf_mapped β Kernel API Manual β¨
okay bestie, welcome to the is_buf_mapped(9) page, from the Kernel API Manual (yes the whole manual, she's fancy like that π). This is the "is this buffer, like, actually mapped for DMA?" check. tiny function, huge main-character energy, let's go π¦
πΈ NAME πΈ
is_buf_mapped β is buffer mapped for DMA? π
β¨ SYNOPSIS β¨
bool is_buf_mapped (const struct rx_sw_desc *sdesc );
that's it. that's the whole signature. she's short and she knows it π«Ά
π ARGUMENTS π
sdescβ pointer to the software buffer descriptor π like, the descriptor's softer, software-side self, not the hardware one. this is the thing you're asking the question about.
π DESCRIPTION π
so here's the vibe check π: this function determines whether the buffer associated with a software descriptor is mapped for DMA or not.
that's the whole personality. you hand her an sdesc, she tells you if that buffer's DMA-mapped. no drama, no side quests, just a bool. iconic behavior honestly π
ngl it's giving "tiny helper that keeps the whole rx path from falling apart" and we love her for it πβ¨
π¦ SEE ALSO π¦
bestie, the friend group is HUGE. she literally knows everyone in ./drivers/net/ethernet/chelsio/cxgb4vf/sge.c β that's the kernel file she lives in π (and yes, the manpage footer just calls it ./drivers/net/ethernet/chelsio... because life is short π)
get_buf_addr(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)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)
π real talk: don't @ me about the truncated-looking footer path, that's literally just how the page renders it. ./drivers/net/ethernet/chelsio... and we move on π
and that's the whole page, bestie!! source is that same chelsio cxgb4vf corner of the kernel (./drivers/net/ethernet/chelsio...), dated October 2026 β so she's fresh, she's current, she's thriving ππ ok bye, go map some buffers, ily π«Άπ
π¦ 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