__octep_oq_process_rx(9)
π __octep_oq_process_rx(9) β the Kernel API Manual glow-up
okay so bestie, we're diving into the Linux kernel API manual for __octep_oq_process_rx(9) and honestly? she's giving "quietly doing the most important work in the room" energy. β¨ Let's get into it.
πΈ NAME πΈ
__octep_oq_process_rx β Process hardware Rx queue and push to stack. π
That's it. That's the whole vibe. She processes, she pushes, she leaves. Iconic.
β¨ SYNOPSIS β¨
int __octep_oq_process_rx (struct octep_device *oct , struct octep_oq *oq , u16 pkts_to_process );
literally just three args and a dream, no cap π«Ά
π ARGUMENTS π
octβ the Octeon device private data structure. Your device's whole personality, basically. π¦oqβ the Octeon Rx queue data structure. The queue in question, the main character. πpkts_to_processβ number of packets to be processed. Yes bestie,u16, so budget accordingly. π
π§ DESCRIPTION π§
So here's the tea: this function processes the new packets sitting in the Rx queue. π₯
Now, plot twist β packets that are larger than a single Rx buffer don't arrive in one descriptor. They show up spread across consecutive descriptors, like a group chat message that got split into seven texts. π±
And here's the important part, don't miss it: the count returned by the API only accounts for full packets, not fragments. So if you were expecting fragment math, nope. Full packets only. Periodt. π
β RETURN β
number of packets processed and pushed to stack. π₯³ (full packets only, remember β see above, iykyk.)
π SEE ALSO π
Peep the kernel file first, bestie:
Kernel file ./drivers/net/ethernet/marvell/octeon_ep/octep_rx.c
And the whole friend group β every single one, no skipping:
octep_oq_fill_ring_buffers(9)octep_oq_refill(9)octep_setup_oq(9)octep_oq_free_ring_buffers(9)octep_free_oq(9)octep_setup_oqs(9)octep_oq_dbell_init(9)octep_free_oqs(9)octep_oq_check_hw_for_pkts(9)octep_oq_next_pkt(9)octep_oq_drop_rx(9)octep_oq_process_rx(9)
(not her linking to herself in the SEE ALSO, we love a self-referential queen π)
ngl, if you're messing with Rx queue internals and you skipped reading octep_rx.c, that's on you bestie π the source is right there.
π and that's the whole page! brought to you by ./drivers/net/ethernet/marvell..., October 2026, living under the Kernel API Manual umbrella β mwah, go read your kernel source, ily, bye ππ
π¦ 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