ef4_fast_pus..._descriptors(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… ef4_fast_push_rx_descriptors β€” like, the iconic one

okay bestie, so this is a page from the Kernel API Manual, and it's about ef4_fast_push_rx_descriptors β€” the function that pushes new RX descriptors quickly ✨ (yeah the name kind of ate, it tells you exactly what's happening).


🌸 NAME 🌸

ef4_fast_push_rx_descriptors β€” push new RX descriptors quickly πŸŽ€


✨ SYNOPSIS ✨

void ef4_fast_push_rx_descriptors (struct ef4_rx_queue *rx_queue , bool
atomic );

like, that's the whole signature. no cap, that's it 🫢


πŸ¦‹ ARGUMENTS πŸ¦‹

  • rx_queue β€” the RX descriptor queue. the main character of this whole function, honestly πŸ‘‘
  • atomic β€” controls the memory allocation flags. yeah it's literally the switch that decides how the memory gets grabbed πŸ’…

πŸ’– DESCRIPTION πŸ’–

so the vibe here is: this function aims to fill the RX descriptor queue all the way up to rx_queue->max_fill. that's the goal, that's the dream 🌈

but β€” and this is the important part, don't skip it β€” if there isn't enough atomic memory to actually do that, then a slow fill gets scheduled instead. so it's not a fail, it's just a "we'll get to it later" situation 😌

⚠️ okay so this is the caveat that matters: the caller must provide serialisation β€” none is used here. in practise, that means this function has to run from the NAPI handler, or be called when NAPI is disabled. do not skip this, bestie, fr fr 🚨

🧚 SEE ALSO 🧚


and that's the page!! mwah πŸ’‹ it lives under ./drivers/net/ethernet/sfc/falcon, dated October 2026, part of the Kernel API Manual β€” go off, kernel docs, you absolute icon β­πŸ‘‘

πŸ“¦ where this page comes from