esbbcall(9F) manual page
Table of Contents
esbbcall - call function when buffer is available
#include
<sys/stream.h>
int esbbcall(int pri, void (*func)(long arg), long arg);
Architecture independent level 1 (DDI/DKI).
- pri
- Priority of
allocation request (to be used by allocb(9F)
function, called by esbbcall())
- func
- Function to be called when buffer becomes available.
- arg
- Argument to
func.
esbbcall(), like bufcall(9F)
, serves as a timeout(9F)
call of indeterminate length. If esballoc(9F)
is unable to allocate a message
and data block header to go with its externally supplied data buffer, esbbcall()
can be used to schedule the routine func, to be called with the argument
arg when a buffer becomes available. func may be a routine that calls
esballoc(9F)
or it may be another kernel function.
On success,
a non-zero integer is returned. On failure, 0 is returned.
The value returned from a successful call should be saved for possible
future use with unbufcall() should it become necessary to cancel the esbbcall()
request (as at driver close time).
esbbcall() can be called from
user or interrupt context.
allocb(9F)
, bufcall(9F)
, esballoc(9F)
,
timeout(9F)
, datab(9S)
Table of Contents