eal: hide shared memory config
[dpdk.git] / lib / librte_eal / common / include / rte_eal_memconfig.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2010-2014 Intel Corporation
3  */
4
5 #ifndef _RTE_EAL_MEMCONFIG_H_
6 #define _RTE_EAL_MEMCONFIG_H_
7
8 /**
9  * @file
10  *
11  * This API allows access to EAL shared memory configuration through an API.
12  */
13
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17
18 /**
19  * Lock the internal EAL shared memory configuration for shared access.
20  */
21 void
22 rte_mcfg_mem_read_lock(void);
23
24 /**
25  * Unlock the internal EAL shared memory configuration for shared access.
26  */
27 void
28 rte_mcfg_mem_read_unlock(void);
29
30 /**
31  * Lock the internal EAL shared memory configuration for exclusive access.
32  */
33 void
34 rte_mcfg_mem_write_lock(void);
35
36 /**
37  * Unlock the internal EAL shared memory configuration for exclusive access.
38  */
39 void
40 rte_mcfg_mem_write_unlock(void);
41
42 /**
43  * Lock the internal EAL TAILQ list for shared access.
44  */
45 void
46 rte_mcfg_tailq_read_lock(void);
47
48 /**
49  * Unlock the internal EAL TAILQ list for shared access.
50  */
51 void
52 rte_mcfg_tailq_read_unlock(void);
53
54 /**
55  * Lock the internal EAL TAILQ list for exclusive access.
56  */
57 void
58 rte_mcfg_tailq_write_lock(void);
59
60 /**
61  * Unlock the internal EAL TAILQ list for exclusive access.
62  */
63 void
64 rte_mcfg_tailq_write_unlock(void);
65
66 /**
67  * Lock the internal EAL Mempool list for shared access.
68  */
69 void
70 rte_mcfg_mempool_read_lock(void);
71
72 /**
73  * Unlock the internal EAL Mempool list for shared access.
74  */
75 void
76 rte_mcfg_mempool_read_unlock(void);
77
78 /**
79  * Lock the internal EAL Mempool list for exclusive access.
80  */
81 void
82 rte_mcfg_mempool_write_lock(void);
83
84 /**
85  * Unlock the internal EAL Mempool list for exclusive access.
86  */
87 void
88 rte_mcfg_mempool_write_unlock(void);
89
90 #ifdef __cplusplus
91 }
92 #endif
93
94 #endif /*__RTE_EAL_MEMCONFIG_H_*/