rte_pmd_dlb2.h(3)
π rte_pmd_dlb2.h β DLB PMD-specific functions π
okay so bestie, this is rte_pmd_dlb2.h, and it lives in section 3 of the manual β that's the Library Functions Manual, the place where all the C library calls hang out. It's a DPDK header, it's giving very much "DLB PMD-specific functions," and honestly? It's kinda iconic. Let's get into it. β¨
πΈ NAME πΈ
rte_pmd_dlb2.h β DLB PMD-specific functions. that's it, that's the whole vibe. π
π¦ SYNOPSIS π¦
#include <stdint.h>
#include <rte_compat.h>
π Data Structures π
struct rte_pmd_dlb2_port_paramβ yeah she's the struct holding your port params
π Macros π
#define RTE_PMD_DLB2_GET_QID_DEPTH(x)#define RTE_PMD_DLB2_SET_QID_DEPTH(x, v)#define RTE_PMD_DLB2_GET_QE_WEIGHT(x)#define RTE_PMD_DLB2_SET_QE_WEIGHT(x, v)#define DLB2_SET_PORT_FLOW_MIGRATION_THRESHOLD RTE_BIT64(0)#define DLB2_SET_PORT_HL RTE_BIT64(1)
π§ Enumerations π§
enum rte_pmd_dlb2_token_pop_mode
π Functions π
__rte_experimental int rte_pmd_dlb2_set_token_pop_mode (uint8_t dev_id,
uint8_t port_id, enum rte_pmd_dlb2_token_pop_mode mode)
__rte_experimental int rte_pmd_dlb2_set_port_param (uint8_t dev_id,
uint8_t port_id, uint64_t flags, struct rte_pmd_dlb2_port_param *val)
π Detailed Description π
DLB PMD-specific functions. fr fr, that's the whole summary.
Definition in file rte_pmd_dlb2.h.
π Macro Definition Documentation π
π #define RTE_PMD_DLB2_GET_QID_DEPTH(x) π
Value:
((x)->rsvd & 0x3)
Macro function to get QID depth of rte_event metadata. Currently lower 2 bits of 'rsvd' field are used to store QID depth. bestie your QID depth is literally just chillin' in the bottom two bits. π
Definition at line 26 of file rte_pmd_dlb2.h.
π #define RTE_PMD_DLB2_SET_QID_DEPTH(x, v) π
Value:
((x)->rsvd = ((x)->rsvd & ~0x3) | (v & 0x3))
Macro function to set QID depth of rte_event metadata. Currently lower 2 bits of 'rsvd' field are used to store QID depth. note the way it clears ~0x3 and then ORs in your value β she's not overwriting anything else, she's respectful like that. β¨
Definition at line 32 of file rte_pmd_dlb2.h.
π #define RTE_PMD_DLB2_GET_QE_WEIGHT(x) π
Value:
(((x)->rsvd >> 2) & 0x3)
Macro function to get QE weight from rte_event metadata. Currently upper 2 bits of 'rsvd' field are used to store QE weight. see how we shifted right by 2? that's her grabbing the upper bits, no cap.
Definition at line 38 of file rte_pmd_dlb2.h.
π #define RTE_PMD_DLB2_SET_QE_WEIGHT(x, v) π
Value:
((x)->rsvd = ((x)->rsvd & 0x3) | ((v & 0x3) << 2))
Macro function to set QE weight from rte_event metadata. Currently upper 2 bits of 'rsvd' field are used to store QE weight. yes bestie she keeps the lower bits intact (& 0x3) and shifts your new value up into position << 2. queen behavior. π
Definition at line 44 of file rte_pmd_dlb2.h.
π #define DLB2_SET_PORT_FLOW_MIGRATION_THRESHOLD RTE_BIT64(0) π
Set inflight threshold for flow migration. π¦
Definition at line 96 of file rte_pmd_dlb2.h.
π #define DLB2_SET_PORT_HL RTE_BIT64(1) π
Set port history list. πβ¨
Definition at line 99 of file rte_pmd_dlb2.h.
π¦ Enumeration Type Documentation π¦
π« enum rte_pmd_dlb2_token_pop_mode π«
β οΈ Warning: EXPERIMENTAL: these enums may change, or be removed, without prior notice. yeah bestie she is not stable, do not build your whole personality on her. π
Selects the token pop mode for a DLB2 port.
Definition at line 52 of file rte_pmd_dlb2.h.
π₯ Function Documentation π₯
π
__rte_experimental int rte_pmd_dlb2_set_token_pop_mode (uint8_t dev_id, uint8_t port_id, enum rte_pmd_dlb2_token_pop_mode mode) π
β οΈ Warning: EXPERIMENTAL: this API may change, or be removed, without prior notice. fr fr, experimental means she could ghost you. π
Configure the token pop mode for a DLB2 port. By default, all ports use RTE_PMD_DLB2_AUTO_POP. This function must be called before calling rte_event_port_setup() for the port, but after calling rte_event_dev_configure(). ok so the order matters bestie β configure the device first, then this, then set up the port. don't be out here doing it backwards. π
Parameters
dev_idβ The identifier of the event device.port_idβ The identifier of the event port.modeβ The token pop mode.
Returns
0: Success β¨EINVAL: Invalid parameterdev_id,port_id, ormodeEINVAL: The DLB2 device is not configured or is already running, or the port is already setup
π
__rte_experimental int rte_pmd_dlb2_set_port_param (uint8_t dev_id, uint8_t port_id, uint64_t flags, struct rte_pmd_dlb2_port_param *val) π
β οΈ Warning: EXPERIMENTAL: this API may change, or be removed, without prior notice. same energy, she's not locked in yet. π«Ά
Configure various port parameters. This function must be called before calling rte_event_port_setup() for the port, and after calling rte_event_dev_configure(). same rules as before β device configured first, port setup after, no skipping steps. π
Parameters
dev_idβ The identifier of the event device.port_idβ The identifier of the event port.flagsβ Bitmask of the parameters being set.valβ Structure containing the values of parameters being set.
Returns
0: Success β¨EINVAL: Invaliddev_id,port_id, ormodeEINVAL: The DLB2 is not configured, is already running, or the port is already setup
πΈ Author πΈ
Generated automatically by Doxygen for DPDK from the source code. no human wrote this bestie, the machine did it. π€π
aaand that's the whole page! π this was generated straight from the DPDK source for DPDK Version 25.11.3, and you just finished reading rte_pmd_dlb2.h(3) β mwah, slay, go configure ur ports. ππ·β
π¦ where this page comes from
- ubuntu resolute: dpdk-doc 25.11.3-0ubuntu0.26.04.1 Β· BSD-3-Clause
- ubuntu stonking: dpdk-doc 25.11.3-1 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms