allocb - STREAMS: Allocates a message block
#include <sys/stream.h>
MBLKP allocb(
int size,
uint pri );
Specifies the number of bytes in the message block. Specifies
the priority of the request. You use this argument
to determine if the allocation of memory blocks (waits) on
the request. If you call the allocb interface at a high
priority and it blocks on the request, the system could
deadlock. Typically, you pass the constant BPRI_WAITOK,
which signifies that allocb can block. If allocb cannot
block, you should pass the BPRI_HI constant.
The allocb interface attempts to allocate a STREAMS message
block. Buffer allocation fails only when the system
is out of memory. If no buffer is available, you can call
the bufcall interface, which helps a module recover from a
memory allocation failure.
Upon successful completion, the allocb interface returns a
pointer to the allocated message block. This message block
is of type struct msgb *. The msgb data structure is
defined in the /usr/sys/include/sys/stream.h file.
If allocb cannot allocate a message block, it returns a
NULL pointer.
Kernel Routines: bufcall(9r), esballoc(9r), testb(9r)
Programmer's Guide: STREAMS
allocb(9r)
[ Back ] |