DPDK 25.07.0
|
#include <rte_graph_feature_arc_worker.h>
Public Member Functions | |
STAILQ_HEAD (, rte_graph_feature_node_list) all_features | |
Data Fields | |
RTE_MARKER | slow_path_variables |
char | feature_arc_name [RTE_GRAPH_FEATURE_ARC_NAMELEN] |
uint32_t | runtime_enabled_features |
uint16_t | max_features |
rte_graph_feature_arc_t | feature_arc_index |
void * | feature_arc_main |
struct rte_node_register * | start_node |
rte_node_process_t | arc_start_process |
size_t | arc_size |
rte_graph_feature_data_t * | feature_data_by_index |
uint32_t | feature_size |
uint64_t * | feature_bit_mask_by_index |
RTE_MARKER | fast_path_variables |
uint64_t | fp_feature_enable_bitmask |
uint16_t | num_added_features |
uint16_t | max_indexes |
uint16_t | fp_first_feature_offset |
uint16_t | fp_feature_data_offset |
int | mbuf_dyn_offset |
RTE_MARKER8 | fp_arc_data |
rte_graph Feature arc object
Feature arc object holds control plane and fast path information for all features and all interface index information for steering packets across feature nodes
Within a feature arc, only RTE_GRAPH_FEATURE_MAX_PER_ARC features can be added. If more features needs to be added, another feature arc can be created
In fast path, rte_graph_feature_arc_t can be translated to (struct rte_graph_feature_arc *) via rte_graph_feature_arc_get(). Later is needed to add as an input argument to all fast path feature arc APIs
Definition at line 84 of file rte_graph_feature_arc_worker.h.
STAILQ_HEAD | ( | rte_graph_feature_node_list | ) |
All feature lists
RTE_MARKER slow_path_variables |
Slow path variables follows
Definition at line 86 of file rte_graph_feature_arc_worker.h.
char feature_arc_name[RTE_GRAPH_FEATURE_ARC_NAMELEN] |
feature arc name
Definition at line 92 of file rte_graph_feature_arc_worker.h.
uint32_t runtime_enabled_features |
control plane counter to track enabled features
Definition at line 95 of file rte_graph_feature_arc_worker.h.
uint16_t max_features |
maximum number of features supported by this arc Immutable during fast path
Definition at line 100 of file rte_graph_feature_arc_worker.h.
rte_graph_feature_arc_t feature_arc_index |
index in feature_arc_main
Definition at line 103 of file rte_graph_feature_arc_worker.h.
void* feature_arc_main |
Back pointer to feature_arc_main
Definition at line 106 of file rte_graph_feature_arc_worker.h.
struct rte_node_register* start_node |
Arc's start/end node
Definition at line 109 of file rte_graph_feature_arc_worker.h.
rte_node_process_t arc_start_process |
arc start process function
Definition at line 113 of file rte_graph_feature_arc_worker.h.
size_t arc_size |
total arc_size allocated
Definition at line 116 of file rte_graph_feature_arc_worker.h.
rte_graph_feature_data_t* feature_data_by_index |
slow path: feature data array maintained per [feature, index]
Definition at line 119 of file rte_graph_feature_arc_worker.h.
uint32_t feature_size |
Size of all feature data for each feature ALIGN(sizeof(struct rte_graph_feature_data) * arc->max_indexes) Not used in fastpath
Definition at line 126 of file rte_graph_feature_arc_worker.h.
uint64_t* feature_bit_mask_by_index |
Slow path bit mask per feature per index
Definition at line 129 of file rte_graph_feature_arc_worker.h.
RTE_MARKER fast_path_variables |
Cache aligned fast path variables
Definition at line 132 of file rte_graph_feature_arc_worker.h.
uint64_t fp_feature_enable_bitmask |
Quick fast path bitmask indicating if any feature enabled. Each bit corresponds to single feature. Helps in optimally process packets for the case when features are added but not enabled
Definition at line 139 of file rte_graph_feature_arc_worker.h.
uint16_t num_added_features |
Number of added features. <= max_features
Definition at line 144 of file rte_graph_feature_arc_worker.h.
uint16_t max_indexes |
maximum number of index supported by this arc Immutable during fast path
Definition at line 148 of file rte_graph_feature_arc_worker.h.
uint16_t fp_first_feature_offset |
first feature offset in fast path Immutable during fast path
Definition at line 153 of file rte_graph_feature_arc_worker.h.
uint16_t fp_feature_data_offset |
arc + fp_feature_data_arr_offset Immutable during fast path
Definition at line 158 of file rte_graph_feature_arc_worker.h.
int mbuf_dyn_offset |
mbuf dynamic offset saved for faster access See rte_graph_feature_arc_mbuf_dynfields_get() for more details
Definition at line 164 of file rte_graph_feature_arc_worker.h.
RTE_MARKER8 fp_arc_data |
Fast path arc data starts
Definition at line 205 of file rte_graph_feature_arc_worker.h.