Index Index for
Section 9r
Index Alphabetical
listing for B
Bottom of page Bottom of
page

bufcall(9r)

NAME

bufcall - STREAMS: Gets a buffer when allocb fails

SYNOPSIS

#include <sys/stream.h> int bufcall( int size, int pri, int (*function) (), long argument );

ARGUMENTS

size Specifies the number of bytes in the buffer. pri Specifies the priority of the allocb allocation request (no longer used). function Specifies a kernel or driver interface to be called when a buffer becomes available. argument Specifies an argument to be passed to the kernel or driver interface specified in the function argument.

DESCRIPTION

The bufcall interface serves as a timeout call of indeterminate length. When a buffer allocation request fails, you can use bufcall to schedule the interface passed to the function argument to be called with the argument passed to argument when a buffer becomes available. The interface passed to function can be a routine that calls allocb or it can be implemented to perform something else.

NOTES

Even when the bufcall interface calls the interface passed to the function argument, the allocb interface can still fail if another module or device driver allocated the memory before the interface in function was able to call allocb.

RETURN VALUES

Upon successful completion, the bufcall interface returns a bufcall id that you can use in a call to the unbufcall interface to cancel the request. If the bufcall scheduling fails (that is, a buffer is not available), the interface passed to function is never called and bufcall returns the value zero (0).

SEE ALSO

Kernel Routines: allocb(9r), esballoc(9r), testb(9r) Programmer's Guide: STREAMS

Index Index for
Section 9r
Index Alphabetical
listing for B
Top of page Top of
page