free_rtn(D4) free_rtn(D4)
NAME
free_rtn - STREAMS driver's message free routine structure
SYNOPSIS
#include <sys/stream.h>
#include <sys/ddi.h>
DESCRIPTION
A free_rtn structure is needed for messages allocated via
esballoc(D3).
USAGE
Since the driver is providing the memory for the data buffer,
a way is needed to notify the driver when the buffer is no
longer in use. esballoc associates the free routine structure
with the message when it is allocated. When freeb(D3) is
called to free the message and the reference count goes to
zero, the driver's message free routine is called, with the
argument specified, to free the data buffer.
Structure Definitions
The free_rtn structure is defined as type frtn_t and contains
the following members:
void (*free_func)() /* driver's free routine */
char *free_arg /* argument to free_func() */
The free_func field specifies the driver's function to be
called when the message has been freed. It is called with
interrupts from STREAMS devices blocked on the processor on
which the function is running.
The free_arg field is the only argument to the driver's free
routine.
REFERENCES
esballoc(D3), freeb(D3)
NOTICES
Portability
All processors
Copyright 1994 Novell, Inc. Page 1