Barrelfish
Functions
vspace_internal.h File Reference

internal functions for the vspace library More...

Functions

errval_t vspace_add_vregion (struct vspace *vspace, struct vregion *region)
 Add a new region into the vspace. More...
 
errval_t vspace_remove_vregion (struct vspace *qvspace, struct vregion *region)
 remove a region from the vspace More...
 
errval_t vspace_pinned_init (void)
 Initialize the pinned region. More...
 
errval_t vspace_pinned_alloc (void **retbuf, enum slab_type slab_type)
 Allocate some slabs. More...
 

Detailed Description

internal functions for the vspace library

Function Documentation

errval_t vspace_add_vregion ( struct vspace *  vspace,
struct vregion *  region 
)

Add a new region into the vspace.

Parameters
pointThe vspace struct
regionThe region to add

pmap implementation rely on vspace maintaining an ordered list of vregions

errval_t vspace_pinned_alloc ( void **  retbuf,
enum slab_type slab_type   
)

Allocate some slabs.

Parameters
retbufPointer to return the allocated memory
slab_typeType of slab the memory is allocated for

Since this region is used for backing specific slabs, only those types of slabs can be allocated.

errval_t vspace_pinned_init ( void  )

Initialize the pinned region.

Allocates a region of virtual address space and initializes its state.

errval_t vspace_remove_vregion ( struct vspace *  vspace,
struct vregion *  region 
)

remove a region from the vspace

Parameters
pointThe vspace struct
regionThe region to remove

Library internal function