Loading...
Searching...
No Matches
rm.h File Reference

Region map interface, C interface. More...

`#include <l4/re/env.h>`
`#include <l4/re/c/dataspace.h>`
`#include <l4/sys/compiler.h>`
Include dependency graph for rm.h:

Go to the source code of this file.

## Enumerations

enum

l4re_rm_flags_values {
L4RE_RM_F_R = L4RE_DS_F_R , L4RE_RM_F_W = L4RE_DS_F_W , L4RE_RM_F_X = L4RE_DS_F_X , L4RE_RM_F_RX = L4RE_DS_F_RX ,
L4RE_RM_F_RW = L4RE_DS_F_RW , L4RE_RM_F_RWX = L4RE_DS_F_RWX , L4RE_RM_F_KERNEL = 0x100 , L4RE_RM_F_DETACH_FREE = 0x200 ,
L4RE_RM_F_PAGER = 0x400 , L4RE_RM_F_RESERVED = 0x800 , L4RE_RM_CACHING_SHIFT = 4 , L4RE_RM_F_CACHING = L4RE_DS_F_CACHING_MASK ,
L4RE_RM_REGION_FLAGS = 0xffff , L4RE_RM_F_CACHE_NORMAL = L4RE_DS_F_NORMAL , L4RE_RM_F_CACHE_BUFFERED = L4RE_DS_F_BUFFERABLE , L4RE_RM_F_CACHE_UNCACHED = L4RE_DS_F_UNCACHEABLE ,
L4RE_RM_F_SEARCH_ADDR = 0x020000 , L4RE_RM_F_IN_AREA = 0x040000 , L4RE_RM_F_EAGER_MAP = 0x080000 , L4RE_RM_F_NO_EAGER_MAP = 0x100000 ,
L4RE_RM_F_ATTACH_FLAGS = 0x1f0000
}

| Flags for region operations. More...

## Functions

int | l4re_rm_reserve_area (l4_addr_t *start, unsigned long size, l4re_rm_flags_t flags, unsigned char align) L4_NOTHROW
| Reserve the given area in the region map.
int | l4re_rm_free_area (l4_addr_t addr) L4_NOTHROW
| Free an area from the region map.
int | l4re_rm_attach (void **start, unsigned long size, l4re_rm_flags_t flags, l4re_ds_t mem, l4re_rm_offset_t offs, unsigned char align) L4_NOTHROW
| Attach a data space to a region.
int | l4re_rm_detach (void *addr) L4_NOTHROW
| Detach and unmap a region from the address space in the current task.
int | l4re_rm_detach_ds (void *addr, l4re_ds_t *ds) L4_NOTHROW
| Detach and unmap a region and return affected dataspace in the current task.
int | l4re_rm_detach_unmap (l4_addr_t addr, l4_cap_idx_t task) L4_NOTHROW
| Detach and unmap in specified task.
int | l4re_rm_detach_ds_unmap (void *addr, l4re_ds_t *ds, l4_cap_idx_t task) L4_NOTHROW
| Detach and unmap in specified task.
int | l4re_rm_find (l4_addr_t *addr, unsigned long *size, l4re_rm_offset_t *offset, l4re_rm_flags_t *flags, l4re_ds_t *m) L4_NOTHROW
| Find a region given an address and size.
int | l4re_rm_get_info (l4_addr_t addr, char *name, unsigned int len, l4re_rm_offset_t *backing_offset) L4_NOTHROW
| Return auxiliary information of a region.
void | l4re_rm_show_lists (void) L4_NOTHROW
| Dump region map internal data structures.
int | l4re_rm_reserve_area_srv (l4_cap_idx_t rm, l4_addr_t *start, unsigned long size, l4re_rm_flags_t flags, unsigned char align) L4_NOTHROW
int | l4re_rm_free_area_srv (l4_cap_idx_t rm, l4_addr_t addr) L4_NOTHROW
int | l4re_rm_attach_srv (l4_cap_idx_t rm, void **start, unsigned long size, l4re_rm_flags_t flags, l4re_ds_t mem, l4re_rm_offset_t offs, unsigned char align) L4_NOTHROW
int | l4re_rm_detach_srv (l4_cap_idx_t rm, l4_addr_t addr, l4re_ds_t *ds, l4_cap_idx_t task) L4_NOTHROW
int | l4re_rm_find_srv (l4_cap_idx_t rm, l4_addr_t *addr, unsigned long *size, l4re_rm_offset_t *offset, l4re_rm_flags_t *flags, l4re_ds_t *m) L4_NOTHROW
int | l4re_rm_get_info_srv (l4_cap_idx_t rm, l4_addr_t addr, char *name, unsigned int len, l4re_rm_offset_t *backing_offset) L4_NOTHROW
void | l4re_rm_show_lists_srv (l4_cap_idx_t rm) L4_NOTHROW
| Dump region map internal data structures.

## Detailed Description

Region map interface, C interface.

Definition in file rm.h.