rte_eth_fdir_action(3)

πŸ“¦ version 26.03, in nixos 26.05, nixpkgs unstable

πŸ’… rte_eth_fdir_action(3) β€” a.k.a. the "what do we even DO when the filter matches" struct

okay so bestie, welcome to rte_eth_fdir_action(3), straight out of the Library Functions Manual section of the DPDK docs β€” and no cap, this one's a little baby struct that does one very specific job. let's get into it. 🫢


✨ NAME ✨

rte_eth_fdir_action β€” the struct you fill in to say what happens when an FDIR packet filter matches. that's it. that's the whole vibe. πŸ’«


🌸 SYNOPSIS 🌸

#include <rte_eth_ctrl.h>

πŸŽ€ Data Fields πŸŽ€

uint16_t rx_queue
enum rte_eth_fdir_behavior behavior
enum rte_eth_fdir_status report_status
uint8_t flex_off

these are the four fields, in order, periodt. we'll get to each one below in its own little spotlight moment πŸ‘‘


πŸ¦‹ Detailed Description πŸ¦‹

so, like, picture this: you've set up a Flow Director (FDIR) packet filter, and it matches a packet. iconic. but then what?? πŸ€” that's literally what this structure is for β€” it's a structure used to define an action when match FDIR packet filter.

it lives at Definition at line 327 of file rte_eth_ctrl.h. memorize that, it's giving very "meet me at the library at 3pm" energy πŸ“š


πŸ’– Field Documentation πŸ’–

⭐ uint16_t rx_queue

Queue assigned to if FDIR match.

translation: when the filter matches, this is the queue that gets the packet. the one being assigned to. yes that sentence is worded exactly like that and we're respecting it πŸ™

Definition at line 328 of file rte_eth_ctrl.h.

⭐ enum rte_eth_fdir_behavior behavior

Behavior will be taken.

that's it. that's the description. the behavior that will be taken. short, mysterious, main character energy honestly πŸ’…

Definition at line 329 of file rte_eth_ctrl.h.

⭐ enum rte_eth_fdir_status report_status

Status report option.

tl;dr: this decides the status reporting option for the action. very "settings menu" of it ✨

Definition at line 330 of file rte_eth_ctrl.h.

⭐ uint8_t flex_off

okay this one has a whole paragraph, she's the star of the show 🌟

If report_status is RTE_ETH_FDIR_REPORT_ID_FLEX_4 or RTE_ETH_FDIR_REPORT_FLEX_8, flex_off specifies where the reported flex bytes start from in flexible payload.

so like. conditional queen. flex_off only really steps into her moment when report_status is one of those two values β€” then she tells you where the reported flex bytes start from in the flexible payload. got it? got it. πŸ’œ

Definition at line 331 of file rte_eth_ctrl.h.


πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for DPDK from the source code.

yup, she was literally auto-generated by Doxygen from the DPDK source code β€” no human hand-wrote this manual page, and honestly? relatable. we've all been on autopilot 😭


bestie reminder: those RTE_ETH_FDIR_REPORT_ID_FLEX_4 and RTE_ETH_FDIR_REPORT_FLEX_8 values are conditionals for flex_off β€” she doesn't always apply, so don't @ her when she doesn't πŸ’€

and that's the whole page!! πŸŽ€ oh, and before I forget β€” this is from DPDK, Version 26.03.0, and if you look really closely at the bottom of the original you'll find my girl rte_eth_fdir_action(3) right there in the footer, just chilling next to the version number. slay. go read your packets. πŸ’–πŸŒΈπŸ¦‹

πŸ“¦ where this page comes from