QUNTIMEOUT(9F) Kernel Functions for Drivers QUNTIMEOUT(9F)
quntimeout - cancel previous qtimeout function call
#include <sys/stream.h>
#include <sys/ddi.h>
clock_t quntimeout(queue_t *q, timeout_id_t id);
illumos DDI specific (illumos DDI).
q
Pointer to a STREAMS queue structure.
id
Opaque timeout ID a previous qtimeout(9F) call.
The quntimeout() function cancels a pending qtimeout(9F) request.
The quntimeout() function is tailored to be used with the enhanced
STREAMS framework interface, which is based on the concept of
perimeters. (See mt-streams(9F).) quntimeout() returns when the
timeout has been cancelled or finished executing. The timeout will be
cancelled even if it is blocked at the perimeters associated with the
queue. quntimeout() should be executed for all outstanding timeouts
before a driver or module close returns. All outstanding timeouts and
bufcalls must be cancelled before a driver close routine can block
and before the close routine calls qprocsoff(9F).
The quntimeout() function returns -1 if the id is not found.
Otherwise, quntimeout() returns a 0 or positive value.
The quntimeout() function can be called from user, interrupt, or
kernel context.
mt-streams(9F), qbufcall(9F), qtimeout(9F), qunbufcall(9F)
Writing Device Drivers
STREAMS Programming Guide
January 16, 2006 QUNTIMEOUT(9F)
NAME
quntimeout - cancel previous qtimeout function call
SYNOPSIS
#include <sys/stream.h>
#include <sys/ddi.h>
clock_t quntimeout(queue_t *q, timeout_id_t id);
INTERFACE LEVEL
illumos DDI specific (illumos DDI).
PARAMETERS
q
Pointer to a STREAMS queue structure.
id
Opaque timeout ID a previous qtimeout(9F) call.
DESCRIPTION
The quntimeout() function cancels a pending qtimeout(9F) request.
The quntimeout() function is tailored to be used with the enhanced
STREAMS framework interface, which is based on the concept of
perimeters. (See mt-streams(9F).) quntimeout() returns when the
timeout has been cancelled or finished executing. The timeout will be
cancelled even if it is blocked at the perimeters associated with the
queue. quntimeout() should be executed for all outstanding timeouts
before a driver or module close returns. All outstanding timeouts and
bufcalls must be cancelled before a driver close routine can block
and before the close routine calls qprocsoff(9F).
RETURN VALUES
The quntimeout() function returns -1 if the id is not found.
Otherwise, quntimeout() returns a 0 or positive value.
CONTEXT
The quntimeout() function can be called from user, interrupt, or
kernel context.
SEE ALSO
mt-streams(9F), qbufcall(9F), qtimeout(9F), qunbufcall(9F)
Writing Device Drivers
STREAMS Programming Guide
January 16, 2006 QUNTIMEOUT(9F)