QUNBUFCALL(9F) Kernel Functions for Drivers QUNBUFCALL(9F)

NAME


qunbufcall - cancel a pending qbufcall request

SYNOPSIS


#include <sys/stream.h>
#include <sys/ddi.h>


void qunbufcall(queue_t *q, bufcall_id_t id);


INTERFACE LEVEL


illumos DDI specific (illumos DDI).

PARAMETERS


q
Pointer to STREAMS queue_t structure.


id
Identifier returned from qbufcall(9F).


DESCRIPTION


The qunbufcall() function cancels a pending qbufcall() request. The
argument id is a non-zero identifier of the request to be cancelled. id
is returned from the qbufcall() function used to issue the cancel
request.


The qunbufcall() function is tailored to be used with the enhanced
STREAMS framework interface which is based on the concept of perimeters.
(See mt-streams(9F).) qunbufcall() returns when the bufcall has been
cancelled or finished executing. The bufcall will be cancelled even if it
is blocked at the perimeters associated with the queue. All outstanding
timeouts and bufcalls must be cancelled before a driver close routine can
block and before the close routine calls qprocsoff(9F).

CONTEXT


The qunbufcall() function can be called from user, interrupt, or kernel
context.

SEE ALSO


mt-streams(9F), qbufcall(9F), qtimeout(9F), quntimeout(9F)


Writing Device Drivers


STREAMS Programming Guide

January 16, 2006 QUNBUFCALL(9F)