RTEMS 5.2
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
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
32typedef struct mmap_mappings_s {
34 void* addr;
35 size_t len;
36 int flags;
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 API.
LibIO Internal Interface.
struct mmap_mappings_s mmap_mapping
Internal Support for POSIX Shared Memory.
Definition: chain.h:68
Control for a POSIX Shared Memory Object.
Definition: shm.h:111
Definition: mmanimpl.h:32
void * addr
Definition: mmanimpl.h:34
size_t len
Definition: mmanimpl.h:35
POSIX_Shm_Control * shm
Definition: mmanimpl.h:37
rtems_chain_node node
Definition: mmanimpl.h:33
int flags
Definition: mmanimpl.h:36
Definition: chain.h:86