bdx_rx_alloc_skbs(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… 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 needs skbs. 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