bdx_rx_alloc_skbs(9)
π
bdx_rx_alloc_skbs β Kernel API Manual π
okay so real talk bestie, we're in the Kernel API Manual today and the star of the show is bdx_rx_alloc_skbs. yes it's a long name. yes it's iconic. let's get into it π
β¨ NAME β¨
bdx_rx_alloc_skbs β fill rxf fifo with new skbs π¦
lowkey the whole personality of this function is in that one line and honestly? she ate.
πΈ SYNOPSIS πΈ
void bdx_rx_alloc_skbs (struct bdx_priv *priv , struct rxf_fifo *f );
so it returns void, meaning it gives you nothing back β no return value, no little treat, no exit code. it's giving "I do the work, I don't need applause" main character energy π
π«Ά ARGUMENTS π«Ά
privβ the nic's private structure. that's her personal stuff, we don't peek πfβ the RXF fifo that needsskbs. she's hungry, feed her π
π₯ DESCRIPTION π₯
okay so here's the vibe check on what this function actually does:
it allocates skbs, builds rxf descs, and pushes it (that's the rxf descr, keep up bestie) into the rxf fifo. so like... allocation, construction, delivery. a full little pipeline. she's an assembly line and she's slaying β¨
the skb's virtual and physical addresses get stored in the skb db. both of them. not one, not the other, both. we love a thorough queen π
to calculate free space, the func uses cached values of RPTR and WPTR. cached! she's not out here re-reading everything from scratch, she's efficient, she's lowkey smart about it π
when needed, it also updates RPTR and WPTR. "when needed" β so not always, not never, just when needed. know the assignment, respect the assignment π§
ngl there's no error return and no exit status here, because the signature is void. so don't come looking for one, bestie, it's just not in the building π
π SEE ALSO π
okay this list is long and we are NOT skipping a single one, every single one of these deserves her moment π
Kernel file ./drivers/net/ethernet/tehuti/tehuti.c, plus:
bdx_fifo_init(9), bdx_fifo_free(9), bdx_link_changed(9), bdx_isr_napi(9), bdx_fw_load(9), bdx_hw_start(9), bdx_close(9), bdx_open(9), __bdx_vlan_rx_vid(9), bdx_vlan_rx_add_vid(9), bdx_vlan_rx_kill_vid(9), bdx_change_mtu(9), bdx_rx_init(9), bdx_rx_free_skbs(9), bdx_rx_free(9), bdx_rx_receive(9), __bdx_tx_db_ptr_next(9), bdx_tx_db_inc_rptr(9), bdx_tx_db_inc_wptr(9), bdx_tx_db_init(9), bdx_tx_db_close(9), bdx_tx_map_skb(9), bdx_tx_space(9), bdx_tx_transmit(9), bdx_tx_cleanup(9), bdx_tx_free_skbs(9), bdx_tx_push_desc(9), bdx_tx_push_desc_safe(9), bdx_probe(9), bdx_remove(9)
like, that's the whole friend group and they're all invited to the group chat π«Ά
and that's the page bestie!! this came from ./drivers/net/ethernet/tehuti, dated October 2026, and it's the bdx_rx_alloc_skbs(9) era β periodt π
β¨ππΈπ
π¦ 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