RTEMS: cpukit/include/rtems/posix/mmanimpl.h Source File

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
mmanimpl.h
Go to the documentation of this file.
1
8/*
9 * Copyright (c) 2012 Chris Johns
10 *
11 * The license and distribution terms for this file may be
12 * found in the file LICENSE in this distribution or at
13 * http://www.rtems.org/license/LICENSE.
14 */
15
16#ifndef _RTEMS_POSIX_MMANIMPL_H
17#define _RTEMS_POSIX_MMANIMPL_H
18
19#include <rtems/libio_.h>
20#include <rtems/chain.h> /* FIXME: use score chains for proper layering? */
21#include <rtems/posix/shm.h>
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
27/* FIXME: add Doxygen */
28
32 typedef struct mmap_mappings_s {
33 rtems_chain_node node;
34 void* addr;
35 size_t len;
36 int flags;
37 POSIX_Shm_Control *shm;
38} mmap_mapping;
39
40extern rtems_chain_control mmap_mappings;
41
42static inline void mmap_mappings_lock_obtain( void )
43{
44 rtems_libio_lock();
45}
46
47static inline void mmap_mappings_lock_release( void )
48{
49 rtems_libio_unlock();
50}
51
52#ifdef __cplusplus
53}
54#endif
55
56#endif
chain.h
Chain API.
libio_.h
LibIO Internal Interface.
mmap_mapping
struct mmap_mappings_s mmap_mapping
shm.h
Internal Support for POSIX Shared Memory.
Chain_Node_struct
Definition: chain.h:68
POSIX_Shm_Control
Control for a POSIX Shared Memory Object.
Definition: shm.h:111
mmap_mappings_s
Definition: mmanimpl.h:32
mmap_mappings_s::addr
void * addr
Definition: mmanimpl.h:34
mmap_mappings_s::len
size_t len
Definition: mmanimpl.h:35
mmap_mappings_s::shm
POSIX_Shm_Control * shm
Definition: mmanimpl.h:37
mmap_mappings_s::node
rtems_chain_node node
Definition: mmanimpl.h:33
mmap_mappings_s::flags
int flags
Definition: mmanimpl.h:36
Chain_Control
Definition: chain.h:86