kmem_free(D3) kmem_free(D3)
NAME
kmem_free - free previously allocated kernel memory
SYNOPSIS
#include <sys/types.h>
#include <sys/kmem.h>
#include <sys/ddi.h>
void kmem_free(void *addr, size_t size);
Arguments
addr Address of the allocated memory to be returned.
size Number of bytes to free.
DESCRIPTION
kmem_free returns to the kernel allocatorsize bytes of kernel
memory previously allocated by kmem_alloc(D3),
kmem_zalloc(D3), kmem_alloc_physreq(D3),
kmem_zalloc_physreq(D3), or kmem_alloc_physcontig(D3).
Return Values
None
USAGE
The addr argument must specify the same address that was
returned by the corresponding call to kmem_alloc(D3),
kmem_zalloc(D3), kmem_alloc_physreq(D3),
kmem_zalloc_physreq(D3), or kmem_alloc_physcontig(D3) which
allocated the memory. [Under SVR4.2MP, memory allocated by
kmem_alloc_physcontig(D3) must be free by
kmem_free_physcontig(D3).]
The size argument must specify the same number of bytes as was
allocated by the corresponding call to kmem_alloc(D3),
kmem_zalloc(D3), kmem_alloc_physreq(D3),
kmem_zalloc_physreq(D3), or kmem_alloc_physcontig(D3).
Together, the addr and size arguments must specify exactly one
complete area of memory that was allocated by a call to
kmem_alloc(D3), kmem_zalloc(D3), kmem_alloc_physreq(D3),
kmem_zalloc_physreq(D3), or kmem_alloc_physcontig(D3) (that
is, the memory cannot be freed piecemeal).
Level
Initialization, Base or Interrupt.
Copyright 1994 Novell, Inc. Page 1
kmem_free(D3) kmem_free(D3)
Synchronization Constraints
Does not sleep.
Driver-defined basic locks, read/write locks, and sleep locks
may be held across calls to this function.
REFERENCES
kmem_alloc(D3), kmem_alloc_physreq(D3),
kmem_zalloc_physreq(D3), kmem_alloc_physcontig(D3),
kmem_free_physcontig(D3), kmem_zalloc(D3)
NOTICES
Portability
All processors
Applicability
ddi: 1, 2, 3, 4, 5, 5mp, 6, 6mp, 7, 7mp
Copyright 1994 Novell, Inc. Page 2