Functions
Public functions
dde_kit_large_free
Free large memory block
| void * |
p |
Pointer to memory block |
dde_kit_large_malloc
Allocate large memory block
| dde_kit_size_t |
size |
Block size |
- Return
-
void * Pointer to new memory block
Allocations via this allocator may be slow (because RPCs to remote services
may be involved) and should be used only for large blocks of several pages.
If allocations/deallocations are relatively dynamic the large memory
allocator should be used as backend for a block caching frontend.
Allocated blocks have valid virt->phys mappings and are physically
contiguous.
dde_kit_simple_free
Free memory block via simple allocator
| void * |
p |
Pointer to memory block |
As in C99, if p is NULL no operation is performed.
dde_kit_simple_malloc
Allocate memory block via simple allocator
| dde_kit_size_t |
size |
Block size |
- Return
-
void * Pointer to new memory block
The blocks allocated via this allocator CANNOT be used for DMA or other
device operations, i.e., there exists no virt->phys mapping.
dde_kit_slab_alloc
Allocate slab in slab cache
| dde_kit_slab * |
slab |
Pointer to slab cache |
- Return
-
void * Pointer to allocated slab
dde_kit_slab_destroy
Destroy slab cache
| dde_kit_slab * |
slab |
Pointer to slab cache structure |
dde_kit_slab_free
Deallocate slab in slab cache
| dde_kit_slab * |
slab |
Pointer to slab cache |
| void * |
objp |
Pointer to allocated slab |
dde_kit_slab_get_data
Read user pointer from slab cache
| dde_kit_slab * |
slab |
Pointer to slab cache |
- Return
-
void * Stored user pointer or 0
dde_kit_slab_set_data
Store user pointer in slab cache
| dde_kit_slab * |
slab |
Pointer to slab cache |
| void * |
data |
User pointer |