Manual Page Result
0
Command: hashinit | Section: 9 | Source: OpenBSD | File: hashinit.9
HASHINIT(9) FreeBSD Kernel Developer's Manual HASHINIT(9)
NAME
hashinit, hashfree - kernel hashtable functions
SYNOPSIS
#include <sys/systm.h>
void *
hashinit(int num, int type, int flags, u_long *mask);
void
hashfree(void *hash, int num, int type);
DESCRIPTION
The hashinit() function is used to allocate a hashtable of a desired size
given by the num argument. The hashinit() function will round this
number to the next power of two, and allocate and initialize the
requested hashtable. The type and flags arguments are passed to the
malloc(9) function unchanged. The mask argument is used to pass back the
mask for use with the allocated hashing table.
The hashfree() function causes memory allocated by the hashinit()
function to be released. The num and type arguments of related calls
must match.
RETURN VALUES
The hashinit() function returns a pointer to the allocated and
initialized hash table.
SEE ALSO
free(9), malloc(9)
LIMITATIONS
The hashinit() function currently only allocates hash tables with LIST
bucket pointers at this time. Future enhancements to allocate QUEUE
bucket pointers may be warranted. This may necessitate an API change to
accommodate.
HISTORY
The hashinit function first appeared in 4.4BSD.
FreeBSD 14.1-RELEASE-p8 September 24, 2016 FreeBSD 14.1-RELEASE-p8