Main Page | Modules | Class List | File List | Class Members | File Members | Related Pages

Internals


Functions

void dde_add_region (struct dde_region **head, l4_addr_t va, l4_addr_t pa, l4_size_t size)
 Internal Region Addition.

void dde_remove_region (struct dde_region **head, l4_addr_t va, l4_addr_t pa, l4_size_t size)
 Internal Region Removal.


Function Documentation

void dde_add_region struct dde_region **  head,
l4_addr_t  va,
l4_addr_t  pa,
l4_size_t  size
[inline, static]
 

Internal Region Addition.

Parameters:
head head of region list
va virtual start address
pa physical start address
size region size

Test:
krishna: do we have overlapping regions in any case? we do not test for these!

Definition at line 53 of file internal.h.

References DEBUG_MSG, and vmalloc().

Referenced by address_add_region(), and request_mem_region().

void dde_remove_region struct dde_region **  head,
l4_addr_t  va,
l4_addr_t  pa,
l4_size_t  size
[inline, static]
 

Internal Region Removal.

Parameters:
head head of region list
va virtual start address
pa physical start address
size region size
This removes the region described by va/pa and size from list head.

Test:
krishna: hmm, could be complicated if we free not the whole allocated region
  1. search right node
  2. remove node resp. split it up into more nodes

Definition at line 83 of file internal.h.

References DEBUG_MSG.

Referenced by address_remove_region(), and release_mem_region().


Linux DDE, written by Christian Helmuth  © 2003 Technische Universitaet Dresden