rte_graph_feature_arc(3)
rte_graph_feature_arc(3) π
okay bestie, this little icon is from the Library Functions Manual, and it's all about rte_graph_feature_arc β a DPDK graph feature arc object. every field, every line number, every crumb is staying. no cap. β¨
πΈ NAME πΈ
rte_graph_feature_arc
β¨ SYNOPSIS β¨
#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
π Detailed Description π
rte_graph Feature arc object. it's giving control-plane and fast-path storage in one place, bestie β it holds control plane and fast path information for all features and all interface index information for steering packets across feature nodes.
so inside one 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. periodt. π
in fast path, rte_graph_feature_arc_t can be translated to (struct rte_graph_feature_arc *) via rte_graph_feature_arc_get(). that translated version is needed as an input argument to all fast path feature arc APIs. iykyk.
Definition at line 84 of file rte_graph_feature_arc_worker.h.
π Member Function Documentation π
STAILQ_HEAD (rte_graph_feature_node_list )
All feature lists. literally all of them, bestie. π«Ά
π¦ Field Documentation π¦
RTE_MARKER slow_path_variablesβ Slow path variables follows. Definition at line 86 of filerte_graph_feature_arc_worker.h.char feature_arc_name[RTE_GRAPH_FEATURE_ARC_NAMELEN]β feature arc name. Definition at line 92 of filerte_graph_feature_arc_worker.h.uint32_t runtime_enabled_featuresβ control plane counter to track enabled features. Definition at line 95 of filerte_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 filerte_graph_feature_arc_worker.h.rte_graph_feature_arc_t feature_arc_indexβ index infeature_arc_main. Definition at line 103 of filerte_graph_feature_arc_worker.h.void* feature_arc_mainβ Back pointer tofeature_arc_main. Definition at line 106 of filerte_graph_feature_arc_worker.h.struct rte_node_register* start_nodeβ Arc's start/end node. Definition at line 109 of filerte_graph_feature_arc_worker.h.rte_node_process_t arc_start_processβ arc start process function. Definition at line 113 of filerte_graph_feature_arc_worker.h.size_t arc_sizeβ totalarc_sizeallocated. Definition at line 116 of filerte_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 filerte_graph_feature_arc_worker.h.uint32_t feature_sizeβ Size of all feature data for each featureALIGN(sizeof(struct rte_graph_feature_data) * arc->max_indexes)Not used in fastpath. Definition at line 126 of filerte_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 filerte_graph_feature_arc_worker.h.RTE_MARKER fast_path_variablesβ Cache aligned fast path variables. Definition at line 132 of filerte_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 filerte_graph_feature_arc_worker.h.uint16_t num_added_featuresβ Number of added features.<= max_features. Definition at line 144 of filerte_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 filerte_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 filerte_graph_feature_arc_worker.h.uint16_t fp_feature_data_offsetβarc + fp_feature_data_arr_offsetImmutable during fast path. Definition at line 158 of filerte_graph_feature_arc_worker.h.int mbuf_dyn_offsetβ mbuf dynamic offset saved for faster access Seerte_graph_feature_arc_mbuf_dynfields_get()for more details. Definition at line 164 of filerte_graph_feature_arc_worker.h.RTE_MARKER8 fp_arc_dataβ Fast path arc data starts. Definition at line 205 of filerte_graph_feature_arc_worker.h.
π Author π
Generated automatically by Doxygen for DPDK from the source code. (yes bestie, the robots wrote it, iconic behavior honestly π€π)
and that's the whole page, bestie π signed off with source DPDK, Version 26.03.0, manual page rte_graph_feature_arc(3). slay. β¨
π¦ where this page comes from
- nixos 26.05: dpdk 26.03
- nixpkgs unstable: dpdk 26.03
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms