---
name: "rte_mempool"
section: "3"
platform: "linux"
package: "dpdk-doc"
version: "24.11.4-0+deb13u1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/rte_mempool"
---

# rte\_mempool(3)

## NAME

rte\_mempool

## SYNOPSIS

`#include <rte_mempool.h>`

### Data Fields

char **name** \[RTE\_MEMPOOL\_NAMESIZE\]\
 void \* **pool\_config**\
 const struct **rte\_memzone** \* **mz**\
 unsigned int **flags**\
 int **socket\_id**\
 uint32\_t **size**\
 uint32\_t **cache\_size**\
 uint32\_t **elt\_size**\
 uint32\_t **header\_size**\
 uint32\_t **trailer\_size**\
 unsigned **private\_data\_size**\
 int32\_t **ops\_index**\
 struct **rte\_mempool\_cache** \* **local\_cache**\
 uint32\_t **populated\_size**\
 struct rte\_mempool\_objhdr\_list **elt\_list**\
 uint32\_t **nb\_mem\_chunks**\
 struct rte\_mempool\_memhdr\_list **mem\_list**\

## Detailed Description

The RTE mempool structure.

Definition at line **230** of file **rte\_mempool.h**.

## Field Documentation

### char name\[RTE\_MEMPOOL\_NAMESIZE\]

Name of mempool.

Definition at line **231** of file **rte\_mempool.h**.

### void\* pool\_data

Ring or pool to store objects.

Definition at line **233** of file **rte\_mempool.h**.

### uint64\_t pool\_id

External mempool identifier.

Definition at line **234** of file **rte\_mempool.h**.

### void\* pool\_config

optional args for ops alloc.

Definition at line **236** of file **rte\_mempool.h**.

### const struct rte\_memzone\* mz

Memzone where pool is alloc'd.

Definition at line **237** of file **rte\_mempool.h**.

### unsigned int flags

Flags of the mempool.

Definition at line **238** of file **rte\_mempool.h**.

### int socket\_id

Socket id passed at create.

Definition at line **239** of file **rte\_mempool.h**.

### uint32\_t size

Max size of the mempool.

Definition at line **240** of file **rte\_mempool.h**.

### uint32\_t cache\_size

Size of per-lcore default local cache.

Definition at line **241** of file **rte\_mempool.h**.

### uint32\_t elt\_size

Size of an element.

Definition at line **244** of file **rte\_mempool.h**.

### uint32\_t header\_size

Size of header (before elt).

Definition at line **245** of file **rte\_mempool.h**.

### uint32\_t trailer\_size

Size of trailer (after elt).

Definition at line **246** of file **rte\_mempool.h**.

### unsigned private\_data\_size

Size of private data.

Definition at line **248** of file **rte\_mempool.h**.

### int32\_t ops\_index

Index into **rte\_mempool\_ops\_table** array of mempool ops structs, which contain callback function pointers. We're using an index here rather than pointers to the callbacks to facilitate any secondary processes that may want to use this mempool.

Definition at line **256** of file **rte\_mempool.h**.

### struct rte\_mempool\_cache\* local\_cache

Per-lcore local cache

Definition at line **258** of file **rte\_mempool.h**.

### uint32\_t populated\_size

Number of populated objects.

Definition at line **260** of file **rte\_mempool.h**.

### struct rte\_mempool\_objhdr\_list elt\_list

List of objects in pool

Definition at line **261** of file **rte\_mempool.h**.

### uint32\_t nb\_mem\_chunks

Number of memory chunks

Definition at line **262** of file **rte\_mempool.h**.

### struct rte\_mempool\_memhdr\_list mem\_list

List of memory chunks

Definition at line **263** of file **rte\_mempool.h**.

## Author

Generated automatically by Doxygen for DPDK from the source code.
