putq(D3DK) —
.IX \f4putq\fP(D3DK)
NAME
putq − put a message on a queue
SYNOPSIS
#include <sys/stream.h>
int putq(queue_t ∗q, mblk_t ∗bp);
ARGUMENTS
qPointer to the queue.
bpPointer to the message.
DESCRIPTION
putq is used to put messages on a queue after the put(D2DK) routine has finished processing the message. The message is placed after any other messages of the same priority, and flow control parameters are updated. The queue’s service routine is scheduled if it has not been disabled by a previous call to noenable(D3DK).
RETURN VALUE
putq returns 1 on success and 0 on failure.
LEVEL
Base or Interrupt.
NOTES
Does not sleep.
Driver-defined basic locks, read/write locks, and sleep locks may be held across calls to this function.
putq can fail if there is not enough memory to allocate the accounting data structures used with messages whose priority bands are greater than zero.
SEE ALSO
put(D2DK), srv(D2DK), getq(D3DK), insq(D3DK), putbq(D3DK), rmvq(D3DK), msgb(D4DK), queue(D4DK)
EXAMPLE
See datamsg(D3DK) for an example of putq.
DDI/DKI — STREAMS"