Lines Matching refs:reg
57 __rte_node_register(const struct rte_node_register *reg) in __rte_node_register() argument
71 if (reg == NULL || reg->process == NULL) { in __rte_node_register()
77 if (node_has_duplicate_entry(reg->name)) in __rte_node_register()
80 sz = sizeof(struct node) + (reg->nb_edges * RTE_NODE_NAMESIZE); in __rte_node_register()
88 if (rte_strscpy(node->name, reg->name, RTE_NODE_NAMESIZE) < 0) in __rte_node_register()
90 node->flags = reg->flags; in __rte_node_register()
91 node->process = reg->process; in __rte_node_register()
92 node->init = reg->init; in __rte_node_register()
93 node->fini = reg->fini; in __rte_node_register()
94 node->nb_edges = reg->nb_edges; in __rte_node_register()
95 node->parent_id = reg->parent_id; in __rte_node_register()
96 for (i = 0; i < reg->nb_edges; i++) { in __rte_node_register()
97 if (rte_strscpy(node->next_nodes[i], reg->next_nodes[i], in __rte_node_register()
117 clone_name(struct rte_node_register *reg, struct node *node, const char *name) in clone_name() argument
122 rc = rte_strscpy(reg->name, node->name, SZ); in clone_name()
126 rc = rte_strscpy(reg->name + sz, "-", RTE_MAX((int16_t)(SZ - sz), 0)); in clone_name()
130 sz = rte_strscpy(reg->name + sz, name, RTE_MAX((int16_t)(SZ - sz), 0)); in clone_name()
144 struct rte_node_register *reg; in node_clone() local
153 reg = calloc(1, sizeof(*reg) + (sizeof(char *) * node->nb_edges)); in node_clone()
154 if (reg == NULL) { in node_clone()
160 reg->flags = node->flags; in node_clone()
161 reg->process = node->process; in node_clone()
162 reg->init = node->init; in node_clone()
163 reg->fini = node->fini; in node_clone()
164 reg->nb_edges = node->nb_edges; in node_clone()
165 reg->parent_id = node->id; in node_clone()
168 reg->next_nodes[i] = node->next_nodes[i]; in node_clone()
171 if (clone_name(reg, node, name)) in node_clone()
174 rc = __rte_node_register(reg); in node_clone()
176 free(reg); in node_clone()