Sun Microsystems, Inc.
spacerspacer
spacer   www.sun.com docs.sun.com | | |  
spacer
black dot
   
A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z
    
 
Kernel Functions for Driversputq(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.9Go To TopLast Changed 28 Aug 2001

 
      
      
Copyright 2002 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.