rte_eth_ctrl.h(3)
π¦ rte_eth_ctrl.h β the DPDK headers era, man page 3 (Library Functions Manual) π
okay bestie, gather round, because this one is a legacy header and it has β¨ lore β¨. It's rte_eth_ctrl.h, a section-3 manual page, and it's basically the dusty-but-iconic corner of DPDK where all the Ethernet device control APIs hang out. She's retired, but she still ate. π
πΈ NAME πΈ
rte_eth_ctrl.h β no cap, that's the whole name, that's the girl.
β¨ SYNOPSIS β¨
Pull her in like this:
#include <stdint.h>
#include <rte_common.h>
#include <rte_ether.h>
#include 'rte_flow.h'
#include 'rte_ethdev.h'
lowkey screaming β yes,rte_flow.handrte_ethdev.hare wrapped in single quotes above, not angle brackets. That's exactly how it's written in the original, so we are NOT touching it. character for character, periodt. π
π§ Data Structures π§
The whole friend group, in order:
struct rte_eth_ntuple_filterstruct rte_eth_input_set_confstruct rte_eth_l2_flowstruct rte_eth_ipv4_flowstruct rte_eth_udpv4_flowstruct rte_eth_tcpv4_flowstruct rte_eth_sctpv4_flowstruct rte_eth_ipv6_flowstruct rte_eth_udpv6_flowstruct rte_eth_tcpv6_flowstruct rte_eth_sctpv6_flowstruct rte_eth_mac_vlan_flowstruct rte_eth_tunnel_flowunion rte_eth_fdir_flowstruct rte_eth_fdir_flow_extstruct rte_eth_fdir_inputstruct rte_eth_fdir_actionstruct rte_eth_fdir_filterstruct rte_eth_fdir_masksstruct rte_eth_flex_payload_cfgstruct rte_eth_fdir_flex_maskstruct rte_eth_fdir_flex_confstruct rte_eth_fdir_infostruct rte_eth_fdir_stats
π Macros π
#define RTE_NTUPLE_FLAGS_DST_IP 0x0001#define RTE_NTUPLE_FLAGS_SRC_IP 0x0002#define RTE_NTUPLE_FLAGS_DST_PORT 0x0004#define RTE_NTUPLE_FLAGS_SRC_PORT 0x0008#define RTE_NTUPLE_FLAGS_PROTO 0x0010#define RTE_NTUPLE_FLAGS_TCP_FLAG 0x0020#define RTE_NTUPLE_TCP_FLAGS_MASK 0x3F#define RTE_ETH_FDIR_MAX_FLEXLEN 16#define RTE_ETH_INSET_SIZE_MAX 128
π Enumerations π
enum rte_eth_input_set_fieldenum rte_filter_input_set_op { }enum rte_eth_fdir_tunnel_typeenum rte_eth_fdir_behaviorenum rte_eth_fdir_status { RTE_ETH_FDIR_NO_REPORT_STATUS = 0, RTE_ETH_FDIR_REPORT_ID, RTE_ETH_FDIR_REPORT_ID_FLEX_4, RTE_ETH_FDIR_REPORT_FLEX_8 }enum rte_eth_payload_typeenum rte_fdir_mode { RTE_FDIR_MODE_NONE = 0, RTE_FDIR_MODE_SIGNATURE, RTE_FDIR_MODE_PERFECT, RTE_FDIR_MODE_PERFECT_MAC_VLAN, RTE_FDIR_MODE_PERFECT_TUNNEL }
π Detailed Description π
Deprecated β bestie, please use the rte_flow API instead of this legacy one. she's iconic but she's retired, fr fr. π
Ethernet device features and related data structures that get used by the control APIs are supposed to be defined in this file. that's the whole job description, no notes. π
Definition in file rte_eth_ctrl.h.
π₯ Macro Definition Documentation π₯
#define RTE_NTUPLE_FLAGS_DST_IP 0x0001
Defines all the structures for the ntuple filter type. If this one's set, then dst_ip is part of the ntuple. π
Definition at line 26 of file rte_eth_ctrl.h.
#define RTE_NTUPLE_FLAGS_SRC_IP 0x0002
If set, src_ip is part of the ntuple. β¨
Definition at line 27 of file rte_eth_ctrl.h.
#define RTE_NTUPLE_FLAGS_DST_PORT 0x0004
If set, dst_port is part of the ntuple. π
Definition at line 28 of file rte_eth_ctrl.h.
#define RTE_NTUPLE_FLAGS_SRC_PORT 0x0008
If set, src_port is part of the ntuple. π¦
Definition at line 29 of file rte_eth_ctrl.h.
#define RTE_NTUPLE_FLAGS_PROTO 0x0010
If set, the protocol is part of the ntuple. πΈ
Definition at line 30 of file rte_eth_ctrl.h.
#define RTE_NTUPLE_FLAGS_TCP_FLAG 0x0020
If set, the tcp flag is involved. π
Definition at line 31 of file rte_eth_ctrl.h.
#define RTE_NTUPLE_TCP_FLAGS_MASK 0x3F
TCP flags filter can match. that's it, that's the mask. π«Ά
Definition at line 44 of file rte_eth_ctrl.h.
#define RTE_ETH_FDIR_MAX_FLEXLEN 16
Max length of flexbytes. no flexing past 16, bestie. π
Definition at line 71 of file rte_eth_ctrl.h.
#define RTE_ETH_INSET_SIZE_MAX 128
Max length of the input set. 128 and not one more. β
Definition at line 72 of file rte_eth_ctrl.h.
π Enumeration Type Documentation π
enum rte_eth_input_set_field
Input set fields for the Flow Director and Hash filters. π
Definition at line 77 of file rte_eth_ctrl.h.
enum rte_filter_input_set_op
The filters' input set operations. the girlies:
Enumerator
RTE_ETH_INPUT_SET_SELECTβ select input set. π―RTE_ETH_INPUT_SET_ADDβ add input set entry. β
Definition at line 133 of file rte_eth_ctrl.h.
enum rte_eth_fdir_tunnel_type
Tunnel type for flow director. π
Definition at line 247 of file rte_eth_ctrl.h.
enum rte_eth_fdir_behavior
The behavior that will be taken if FDIR matches. main character energy only. π
Definition at line 307 of file rte_eth_ctrl.h.
enum rte_eth_fdir_status
Flow director report status β it defines what will be reported if an FDIR entry is matched. π
Enumerator
RTE_ETH_FDIR_NO_REPORT_STATUSβ report nothing. silent, mysterious, iconique. π€«RTE_ETH_FDIR_REPORT_IDβ only report the FD ID. πRTE_ETH_FDIR_REPORT_ID_FLEX_4β report the FD ID and 4 flex bytes. β¨RTE_ETH_FDIR_REPORT_FLEX_8β report 8 flex bytes. π
Definition at line 317 of file rte_eth_ctrl.h.
enum rte_eth_payload_type
Payload type. π¦
Definition at line 373 of file rte_eth_ctrl.h.
enum rte_fdir_mode
Flow Director setting modes: none, signature or perfect. pick your fighter. π₯
Enumerator
RTE_FDIR_MODE_NONEβ disable FDIR support. bye bestie. πRTE_FDIR_MODE_SIGNATUREβ enable FDIR signature filter mode. βοΈRTE_FDIR_MODE_PERFECTβ enable FDIR perfect filter mode. π―RTE_FDIR_MODE_PERFECT_MAC_VLANβ enable FDIR filter mode - MAC VLAN. π·οΈRTE_FDIR_MODE_PERFECT_TUNNELβ enable FDIR filter mode - tunnel. π³οΈ
Definition at line 421 of file rte_eth_ctrl.h.
π Author π
Generated automatically by Doxygen for DPDK from the source code. (not a human, just a very diligent little robot π«Ά)
okay that's the whole page, you understood it, I'm so proud, slay. π this was DPDK Version 25.11.3, rte_eth_ctrl.h(3) β mwah, go forth and remember to use rte_flow instead. πβ¨π
π¦ 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