DPDK 21.11.9
|
Go to the source code of this file.
Data Structures | |
struct | rte_tailq_entry |
struct | rte_tailq_head |
Macros | |
#define | RTE_TAILQ_CAST(tailq_entry, struct_name) (struct struct_name *)&(tailq_entry)->tailq_head |
#define | RTE_TAILQ_LOOKUP(name, struct_name) RTE_TAILQ_CAST(rte_eal_tailq_lookup(name), struct_name) |
Functions | |
RTE_TAILQ_HEAD (rte_tailq_entry_head, rte_tailq_entry) | |
void | rte_dump_tailq (FILE *f) |
struct rte_tailq_head * | rte_eal_tailq_lookup (const char *name) |
int | rte_eal_tailq_register (struct rte_tailq_elem *t) |
Here defines rte_tailq APIs for only internal use
Definition in file rte_tailq.h.
#define RTE_TAILQ_CAST | ( | tailq_entry, | |
struct_name | |||
) | (struct struct_name *)&(tailq_entry)->tailq_head |
Return the first tailq entry cast to the right struct.
Definition at line 57 of file rte_tailq.h.
#define RTE_TAILQ_LOOKUP | ( | name, | |
struct_name | |||
) | RTE_TAILQ_CAST(rte_eal_tailq_lookup(name), struct_name) |
Utility macro to make looking up a tailqueue for a particular struct easier.
name | The name of tailq |
struct_name | The name of the list type we are using. (Generally this is the same as the first parameter passed to TAILQ_HEAD macro) |
Definition at line 76 of file rte_tailq.h.
RTE_TAILQ_HEAD | ( | rte_tailq_entry_head | , |
rte_tailq_entry | |||
) |
dummy
void rte_dump_tailq | ( | FILE * | f | ) |
Dump tail queues to a file.
f | A pointer to a file for output |
struct rte_tailq_head * rte_eal_tailq_lookup | ( | const char * | name | ) |
Lookup for a tail queue.
Get a pointer to a tail queue header of a tail queue identified by the name given as an argument. Note: this function is not multi-thread safe, and should only be called from a single thread at a time
name | The name of the queue. |
int rte_eal_tailq_register | ( | struct rte_tailq_elem * | t | ) |
Register a tail queue.
Register a tail queue from shared memory. This function is mainly used by EAL_REGISTER_TAILQ macro which is used to register tailq from the different dpdk libraries. Since this macro is a constructor, the function has no access to dpdk shared memory, so the registered tailq can not be used before call to rte_eal_init() which calls rte_eal_tailqs_init().
t | The tailq element which contains the name of the tailq you want to create (/retrieve when in secondary process). |