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
putq() 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
putq() returns 1 on success and 0 on failure.
Note - Upon failure, the caller should call freemsg(9F) to free the pointer to the message block.
CONTEXT
putq() can be called from user or interrupt 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
SunOS 5.10 28 Aug 2001 putq(9F)