sdk-core v2026.11.05
PS2 SDK - core tier (build-critical EE/IOP modules)
Loading...
Searching...
No Matches
memp.h File Reference
#include "lwip/opt.h"
#include "lwip/priv/memp_std.h"
#include "lwip/priv/memp_priv.h"
#include "lwip/stats.h"

Go to the source code of this file.

Macros

#define LWIP_MEMPOOL(name, num, size, desc)
#define LWIP_MEMPOOL(name, num, size, desc)
#define LWIP_MALLOC_MEMPOOL(num, size)
#define LWIP_MALLOC_MEMPOOL_START
#define LWIP_MALLOC_MEMPOOL_END
#define LWIP_PBUF_MEMPOOL(name, num, payload, desc)
#define LWIP_MEMPOOL_PROTOTYPE(name)
#define LWIP_MEMPOOL_DECLARE(name, num, size, desc)
#define LWIP_MEMPOOL_INIT(name)
#define LWIP_MEMPOOL_ALLOC(name)
#define LWIP_MEMPOOL_FREE(name, x)

Enumerations

enum  memp_t { MEMP_MAX }

Functions

void memp_init (void)
void * memp_malloc (memp_t type)
void memp_free (memp_t type, void *mem)

Variables

const struct memp_desc *const memp_pools [MEMP_MAX]

Detailed Description

Memory pool API

lwIP internal memory pools (do not use in application code) This file is deliberately included multiple times: once with empty definition of LWIP_MEMPOOL() to handle all includes and multiple times to build up various lists of mem pools.

Definition in file memp.h.

Macro Definition Documentation

◆ LWIP_MALLOC_MEMPOOL

#define LWIP_MALLOC_MEMPOOL ( num,
size )
Value:
LWIP_MEMPOOL(POOL_##size, num, (size + LWIP_MEM_ALIGN_SIZE(sizeof(struct memp_malloc_helper))), "MALLOC_"#size)
#define LWIP_MEM_ALIGN_SIZE(size)
Definition arch.h:279

Definition at line 78 of file memp.h.

◆ LWIP_MALLOC_MEMPOOL_END

#define LWIP_MALLOC_MEMPOOL_END

Definition at line 80 of file memp.h.

◆ LWIP_MALLOC_MEMPOOL_START

#define LWIP_MALLOC_MEMPOOL_START

Definition at line 79 of file memp.h.

◆ LWIP_MEMPOOL [1/2]

#define LWIP_MEMPOOL ( name,
num,
size,
desc )
Value:
MEMP_##name,

Definition at line 48 of file memp.h.

◆ LWIP_MEMPOOL [2/2]

#define LWIP_MEMPOOL ( name,
num,
size,
desc )

Definition at line 48 of file memp.h.

◆ LWIP_PBUF_MEMPOOL

#define LWIP_PBUF_MEMPOOL ( name,
num,
payload,
desc )
Value:
LWIP_MEMPOOL(name, num, (LWIP_MEM_ALIGN_SIZE(sizeof(struct pbuf)) + LWIP_MEM_ALIGN_SIZE(payload)), desc)
Definition tcpip.h:234

Definition at line 86 of file memp.h.

Enumeration Type Documentation

◆ memp_t

enum memp_t

Create the list of all memory pools managed by memp. MEMP_MAX represents a NULL pool at the end

Definition at line 52 of file memp.h.

Function Documentation

◆ memp_free()

void memp_free ( memp_t type,
void * mem )

Put an element back into its pool.

Parameters
typethe pool where to put mem
memthe memp element to free

Definition at line 420 of file memp.c.

◆ memp_init()

void memp_init ( void )

Initializes lwIP built-in pools. Related functions: memp_malloc, memp_free

Carves out memp_memory into linked lists for each pool-type.

Definition at line 224 of file memp.c.

◆ memp_malloc()

void * memp_malloc ( memp_t type)

Get an element from a specific pool.

Parameters
typethe pool to get an element from
Returns
a pointer to the allocated memory or a NULL pointer on error

Definition at line 337 of file memp.c.

Variable Documentation

◆ memp_pools

const struct memp_desc* const memp_pools[MEMP_MAX]
extern

Definition at line 81 of file memp.c.