MCPcopy Create free account
hub / github.com/F-Stack/f-stack / rte_reorder_entry_insert

Function rte_reorder_entry_insert

dpdk/lib/reorder/rte_reorder.c:126–152  ·  view source on GitHub ↗

* Insert new entry into global list. * Returns pointer to already inserted entry if such exists, or to newly inserted one. */

Source from the content-addressed store, hash-verified

124 * Returns pointer to already inserted entry if such exists, or to newly inserted one.
125 */
126static struct rte_tailq_entry *
127rte_reorder_entry_insert(struct rte_tailq_entry *new_te)
128{
129 struct rte_reorder_list *reorder_list;
130 struct rte_reorder_buffer *b, *nb;
131 struct rte_tailq_entry *te;
132
133 rte_mcfg_tailq_write_lock();
134
135 reorder_list = RTE_TAILQ_CAST(rte_reorder_tailq.head, rte_reorder_list);
136 /* guarantee there's no existing */
137 TAILQ_FOREACH(te, reorder_list, next) {
138 b = (struct rte_reorder_buffer *) te->data;
139 nb = (struct rte_reorder_buffer *) new_te->data;
140 if (strncmp(nb->name, b->name, RTE_REORDER_NAMESIZE) == 0)
141 break;
142 }
143
144 if (te == NULL) {
145 TAILQ_INSERT_TAIL(reorder_list, new_te, next);
146 te = new_te;
147 }
148
149 rte_mcfg_tailq_write_unlock();
150
151 return te;
152}
153
154struct rte_reorder_buffer*
155rte_reorder_create(const char *name, unsigned socket_id, unsigned int size)

Callers 1

rte_reorder_createFunction · 0.85

Calls 3

strncmpFunction · 0.85

Tested by

no test coverage detected