SVR5
qprocson(D3str)
qprocson --
enable put and service routines
Synopsis (Not in ODDI)
#include <sys/stream.h>
#include <sys/ddi.h>
void qprocson(queue_t *rq);
Description
qprocson enables the put and service routines of the driver
or module whose read queue is pointed to by rq.
Prior to the call to qprocson, the put and service routines of
a newly pushed module or newly opened driver are disabled.
When the routines are disabled in a module,
messages flow around the module as if it were not present in the stream.
Arguments
rq-
Pointer to a read queue.
Return values
None
Usage
qprocson must be called by the first open of a
module or driver after allocation and initialization of any resources on
which the put and service routines depend.
Modules or drivers should call qprocson exactly once to
enable put and service procedures.
qprocsoff is called (also exactly once) to disable these
put and service procedures.
The STREAMS subsystem assumes
that modules and drivers that do not set
D_MP (see
devflag(D1))
do not know about qprocson and will do
the qprocson on behalf of the module or driver.
Context
Base only.
Synchronization constraints
Can block.
Driver-defined basic locks and read/write locks may not be held across
calls to this function.
Driver-defined sleep locks may be held across
calls to this function.
The caller cannot have the stream frozen [see
freezestr(D3str)]
when calling this function.
Hardware applicability
All
Version applicability
ddi:
3, 5, 5mp, 6, 6mp, 7, 7mp, 7.1, 7.1mp, 8, 8mp
References
open(D2),
put(D2str),
srv(D2str),
qprocsoff(D3str)
19 June 2005
© 2005 The SCO Group, Inc. All rights reserved.
OpenServer 6 and UnixWare (SVR5) HDK - June 2005