Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ enableok(D3DK) — Motorola System V 88k Release 4 Version 4.3

Media Vault

Software Library

Restoration Projects

Artifacts Sought

enableok(D3DK)  —  

.IX \f4enableok\fP(D3DK)
.IX STREAMS message queues

NAME

enableok − allow a queue to be serviced

SYNOPSIS

#include <sys/stream.h>
#include <sys/ddi.h>
void enableok(queue_t ∗q);

ARGUMENTS

qPointer to the queue. 

DESCRIPTION

The enableok function allows the service routine of the queue pointed to by q to be rescheduled for service.  It cancels the effect of a previous use of the noenable(D3DK) function on q. 

RETURN VALUE

None. 

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. 

SEE ALSO

srv(D2DK), noenable(D3DK), qenable(D3DK), queue(D4DK)

EXAMPLE

The qrestart routine uses two STREAMS functions to re-enable a queue that has been disabled.  The enableok function removes the restriction that prevented the queue from being scheduled when a message was enqueued.  Then, if there are messages on the queue, it is scheduled by calling qenable(D3DK). 

1  void
2  qrestart(q)
3register queue_t ∗q;
4  {
5enableok(q);
6if (q->q_first)
7qenable(q);
8  }

.IX \f4enableok\fP(D3DK), example
.IX \f4qenable\fP(D3DK), example

DDI/DKI  —  STREAMS

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026