PUTQ(9F) Kernel Functions for Drivers PUTQ(9F)
NAME
putq - put a message on a queue
SYNOPSIS
#include <sys/stream.h>
int putq(
queue_t *q,
mblk_t *bp);
INTERFACE LEVEL
Architecture independent level 1 (DDI/DKI).
PARAMETERS
q Pointer to the queue to which the message is to be added.
bp Message to be put on the queue.
DESCRIPTION
The
putq() function is used to put messages on a driver's queue after
the module's put routine has finished processing the message. The
message is placed after any other messages of the same priority, and
flow control parameters are updated. If
QNOENB is not set, the
service routine is enabled. If no other processing is done,
putq() can be used as the module's put routine.
RETURN VALUES
The
putq() function returns
1 on success and
0 on failure.
Upon failure, the caller should call
freemsg(9F) to free the pointer
to the message block.
CONTEXT
The
putq() function can be called from user, interrupt, or kernel
context.
EXAMPLES
See the
datamsg(9F) function page for an example of
putq().
SEE ALSO
datamsg(9F),
putbq(9F),
qenable(9F),
rmvq(9F) Writing Device Drivers STREAMS Programming Guide January 16, 2006 PUTQ(9F)