free_rtn(D4DK) —
.IX \f4free_rtn\fP(D4DK)
NAME
free_rtn − STREAMS driver’s message free routine structure
SYNOPSIS
#include <sys/stream.h>
DESCRIPTION
A free_rtn structure is needed for messages allocated via esballoc(D3DK). 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(D3DK) 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 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.
The free_rtn structure is defined as type frtn_t.
SEE ALSO
Programmer’s Guide: STREAMS
esballoc(D3DK), freeb(D3DK)
DDI/DKI — STREAMS