#include <sys/stream.h> #include <sys/ddi.h> queue_t *WR(queue_t *q);
Architecture independent level 1 (DDI/DKI).
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.
WR() can be called from user or interrupt context.
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 }