Content-type: text/html Man page of rmfree

rmfree

Section: Kernel Functions for Drivers (9F)
Updated: 16 Jan 2006
Index Return to Main Contents
 

NAME

rmfree - free space back into a resource map  

SYNOPSIS

#include <sys/map.h> 
#include <sys/ddi.h> 

void rmfree(struct map *mp, size_t size, ulong_t index);  

INTERFACE LEVEL

Architecture independent level 1 (DDI/DKI).  

PARAMETERS

mp Pointer to the map structure.

size Number of units being freed.

index Index of the first unit of the allocated resource.

 

DESCRIPTION

The rmfree() function releases space back into a resource map. It is the opposite of rmalloc(9F), which allocates space that is controlled by a resource map structure.

When releasing resources using rmfree() the size and index passed to rmfree() must exactly match the size and index values passed to and returned from a previous call to rmalloc(). Resources cannot be returned piecemeal.

Drivers may define resource maps for resource allocation, in terms of arbitrary units, using the rmallocmap(9F) function. The system maintains the resource map structure by size and index, computed in units appropriate for the resource. For example, units may be byte addresses, pages of memory, or blocks. rmfree() frees up unallocated space for re-use.

The rmfree() function can also be used to initialize a resource map, in which case the size and index should cover the entire resource area.  

CONTEXT

The rmfree() function can be called from user, interrupt, or kernel context.  

SEE ALSO

rmalloc(9F), rmalloc_wait(9F), rmallocmap(9F), rmfreemap(9F)

Writing Device Drivers


 

Index

NAME
SYNOPSIS
INTERFACE LEVEL
PARAMETERS
DESCRIPTION
CONTEXT
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 02:39:47 GMT, October 02, 2010