DPDK
25.11.0
Toggle main menu visibility
Loading...
Searching...
No Matches
rte_memzone.h
Go to the documentation of this file.
1
/* SPDX-License-Identifier: BSD-3-Clause
2
* Copyright(c) 2010-2014 Intel Corporation
3
*/
4
5
#ifndef _RTE_MEMZONE_H_
6
#define _RTE_MEMZONE_H_
7
24
25
#include <stdio.h>
26
#include <
rte_memory.h
>
27
#include <
rte_common.h
>
28
29
#ifdef __cplusplus
30
extern
"C"
{
31
#endif
32
33
#define RTE_MEMZONE_2MB 0x00000001
34
#define RTE_MEMZONE_1GB 0x00000002
35
#define RTE_MEMZONE_16MB 0x00000100
36
#define RTE_MEMZONE_16GB 0x00000200
37
#define RTE_MEMZONE_256KB 0x00010000
38
#define RTE_MEMZONE_256MB 0x00020000
39
#define RTE_MEMZONE_512MB 0x00040000
40
#define RTE_MEMZONE_4GB 0x00080000
41
#define RTE_MEMZONE_SIZE_HINT_ONLY 0x00000004
42
#define RTE_MEMZONE_IOVA_CONTIG 0x00100000
43
48
struct
__rte_packed_begin
rte_memzone
{
49
50
#define RTE_MEMZONE_NAMESIZE 32
51
char
name
[
RTE_MEMZONE_NAMESIZE
];
52
53
rte_iova_t
iova
;
54
union
{
55
void
*
addr
;
56
uint64_t
addr_64
;
57
};
58
size_t
len
;
59
60
uint64_t
hugepage_sz
;
61
62
int32_t
socket_id
;
63
64
uint32_t
flags
;
65
} __rte_packed_end;
66
77
int
rte_memzone_max_set
(
size_t
max);
78
87
size_t
rte_memzone_max_get
(
void
);
88
146
const
struct
rte_memzone
*
rte_memzone_reserve
(
const
char
*
name
,
147
size_t
len
,
int
socket_id
,
148
unsigned
flags
);
149
211
const
struct
rte_memzone
*
rte_memzone_reserve_aligned
(
const
char
*
name
,
212
size_t
len
,
int
socket_id
,
213
unsigned
flags
,
unsigned
align);
214
282
const
struct
rte_memzone
*
rte_memzone_reserve_bounded
(
const
char
*
name
,
283
size_t
len
,
int
socket_id
,
284
unsigned
flags
,
unsigned
align,
unsigned
bound);
285
295
int
rte_memzone_free
(
const
struct
rte_memzone
*mz);
296
308
const
struct
rte_memzone
*
rte_memzone_lookup
(
const
char
*
name
);
309
316
void
rte_memzone_dump
(FILE *f);
317
326
void
rte_memzone_walk
(
void
(*func)(
const
struct
rte_memzone
*,
void
*arg),
327
void
*arg);
328
329
#ifdef __cplusplus
330
}
331
#endif
332
333
#endif
/* _RTE_MEMZONE_H_ */
rte_common.h
rte_iova_t
uint64_t rte_iova_t
Definition
rte_common.h:770
__rte_packed_begin
#define __rte_packed_begin
Definition
rte_common.h:158
rte_memory.h
rte_memzone_max_get
size_t rte_memzone_max_get(void)
rte_memzone_dump
void rte_memzone_dump(FILE *f)
rte_memzone_max_set
int rte_memzone_max_set(size_t max)
RTE_MEMZONE_NAMESIZE
#define RTE_MEMZONE_NAMESIZE
Definition
rte_memzone.h:50
rte_memzone_reserve
const struct rte_memzone * rte_memzone_reserve(const char *name, size_t len, int socket_id, unsigned flags)
rte_memzone_walk
void rte_memzone_walk(void(*func)(const struct rte_memzone *, void *arg), void *arg)
rte_memzone_free
int rte_memzone_free(const struct rte_memzone *mz)
rte_memzone_reserve_bounded
const struct rte_memzone * rte_memzone_reserve_bounded(const char *name, size_t len, int socket_id, unsigned flags, unsigned align, unsigned bound)
rte_memzone_lookup
const struct rte_memzone * rte_memzone_lookup(const char *name)
rte_memzone_reserve_aligned
const struct rte_memzone * rte_memzone_reserve_aligned(const char *name, size_t len, int socket_id, unsigned flags, unsigned align)
rte_memzone
Definition
rte_memzone.h:48
rte_memzone::name
char name[RTE_MEMZONE_NAMESIZE]
Definition
rte_memzone.h:51
rte_memzone::addr_64
uint64_t addr_64
Definition
rte_memzone.h:56
rte_memzone::len
size_t len
Definition
rte_memzone.h:58
rte_memzone::flags
uint32_t flags
Definition
rte_memzone.h:64
rte_memzone::hugepage_sz
uint64_t hugepage_sz
Definition
rte_memzone.h:60
rte_memzone::socket_id
int32_t socket_id
Definition
rte_memzone.h:62
rte_memzone::iova
rte_iova_t iova
Definition
rte_memzone.h:53
rte_memzone::addr
void * addr
Definition
rte_memzone.h:55
lib
eal
include
rte_memzone.h
Generated by
1.17.0