wr(9F)




NAME

     WR, wr - get pointer to the write queue for this  module  or
     driver


SYNOPSIS

     #include <sys/stream.h>
     #include <sys/ddi.h>

     queue_t *WR(queue_t *q);


INTERFACE LEVEL

     Architecture independent level 1 (DDI/DKI).


PARAMETERS

     q     Pointer to the read queue whose  write queue is to  be
           returned.


DESCRIPTION

     The WR() function accepts a read queue pointer as  an  argu-
     ment  and  returns  a pointer to the write queue of the same
     module.

     CAUTION: Make sure  the  argument  to  this  function  is  a
     pointer to a read queue. WR() will not check for queue type,
     and a system panic could result if the pointer is not  to  a
     read queue.


RETURN VALUES

     The pointer to the write queue.


CONTEXT

     WR() can be called from user or interrupt context.


EXAMPLES

     Example 1: Using WR()

     In a STREAMS close(9E) routine,  the  driver  or  module  is
     passed  a  pointer to the read queue.  These usually are set
     to the address of the module-specific data structure for the
     minor device.

     1   xxxclose(q, flag)
     2       queue_t *q;
     3       int flag;
     4   {
     5             q->q_ptr = NULL;
     6         WR(q)->q_ptr = NULL;
                   . . .
     7   }


SEE ALSO

     close(9E), OTHERQ(9F), RD(9F)

     Writing Device Drivers

     STREAMS Programming Guide


Man(1) output converted with man2html