eal/windows: remove useless C++ include guard
[dpdk.git] / lib / eal / 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 #include <stdbool.h>
9
10 #include <rte_compat.h>
11
12 /**
13  * @file
14  *
15  * This API allows access to EAL shared memory configuration through an API.
16  */
17
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21
22 /**
23  * Lock the internal EAL shared memory configuration for shared access.
24  */
25 void
26 rte_mcfg_mem_read_lock(void);
27
28 /**
29  * Unlock the internal EAL shared memory configuration for shared access.
30  */
31 void
32 rte_mcfg_mem_read_unlock(void);
33
34 /**
35  * Lock the internal EAL shared memory configuration for exclusive access.
36  */
37 void
38 rte_mcfg_mem_write_lock(void);
39
40 /**
41  * Unlock the internal EAL shared memory configuration for exclusive access.
42  */
43 void
44 rte_mcfg_mem_write_unlock(void);
45
46 /**
47  * Lock the internal EAL TAILQ list for shared access.
48  */
49 void
50 rte_mcfg_tailq_read_lock(void);
51
52 /**
53  * Unlock the internal EAL TAILQ list for shared access.
54  */
55 void
56 rte_mcfg_tailq_read_unlock(void);
57
58 /**
59  * Lock the internal EAL TAILQ list for exclusive access.
60  */
61 void
62 rte_mcfg_tailq_write_lock(void);
63
64 /**
65  * Unlock the internal EAL TAILQ list for exclusive access.
66  */
67 void
68 rte_mcfg_tailq_write_unlock(void);
69
70 /**
71  * Lock the internal EAL Mempool list for shared access.
72  */
73 void
74 rte_mcfg_mempool_read_lock(void);
75
76 /**
77  * Unlock the internal EAL Mempool list for shared access.
78  */
79 void
80 rte_mcfg_mempool_read_unlock(void);
81
82 /**
83  * Lock the internal EAL Mempool list for exclusive access.
84  */
85 void
86 rte_mcfg_mempool_write_lock(void);
87
88 /**
89  * Unlock the internal EAL Mempool list for exclusive access.
90  */
91 void
92 rte_mcfg_mempool_write_unlock(void);
93
94 /**
95  * Lock the internal EAL Timer Library lock for exclusive access.
96  */
97 void
98 rte_mcfg_timer_lock(void);
99
100 /**
101  * Unlock the internal EAL Timer Library lock for exclusive access.
102  */
103 void
104 rte_mcfg_timer_unlock(void);
105
106 /**
107  * If true, pages are put in single files (per memseg list),
108  * as opposed to creating a file per page.
109  */
110 bool
111 rte_mcfg_get_single_file_segments(void);
112
113 #ifdef __cplusplus
114 }
115 #endif
116
117 #endif /*__RTE_EAL_MEMCONFIG_H_*/