sdi_poolinit(D3I) sdi_poolinit(D3I)
NAME
sdi_poolinit - initialize a dynamic structure pool
SYNOPSIS
#include <sys/sdi.h>
void sdi_poolinit(struct head *headp);
Arguments
headp Pointer to a partially initialized head structure; the
f_isize, f_maxpages, and the f_freelist must be
initialized.
DESCRIPTION
sdi_poolinit initializes the head structure for the new pool
of memory.
Return Values
None.
USAGE
You must call this routine before the first sdi_get call.
Before calling sdi_poolinit, the f_isize, f_maxpages, and
f_freelist fields of headp must be initialized to the needed
values.
The f_isize field will contain the size in bytes of the
structures for this pool. The f_maxpages field is the number
of pages to be requested for each allocation of kernel memory
for structures. Unless the structures are very large, a good
value for f_maxpages is 1. The f_freelist field must point to
a struct jpool structure which is initialized with both
pointers pointing back at itself (to serve as a terminating
element of the freelist).
Level
Base only.
Examples
This example shows the sequence of instructions used to
initialize a struct head and the call to sdi_poolinit.
struct head sm_poolhead;
struct jpool smfreelist;
sm_poolhead.f_maxpages = 1;
Copyright 1994 Novell, Inc. Page 1
sdi_poolinit(D3I) sdi_poolinit(D3I)
smfreelist.j_ff = smfreelist.j_fb = &smfreelist;
sm_poolhead.f_freelist = &smfreelist;
sm_poolhead.f_isize = 28;
sdi_poolinit(&sm_poolhead);
...
NOTICES
sdi_poolinit is valid only in UNIX SVR4.2. It has been
removed in SVR4.2 MP (and further releases.) Use of and
reliance upon this function is strongly discouraged.
The sdi_poolinit manual page will be removed in a subsequent
release of the Device Driver Reference.
NOTICES
Applicability
sdi: 1, 2
Copyright 1994 Novell, Inc. Page 2