STRQSET(9F) Kernel Functions for Drivers STRQSET(9F)

strqset - change information about a queue or band of the queue

#include <sys/stream.h>
int strqset(queue_t *q, qfields_t what, unsigned char pri, intptr_t val);

Architecture independent level 1 (DDI/DKI).

q

Pointer to the queue.

what

Field of the queue structure (or the specified priority band) to return information about. Valid values are one of:

QHIWAT

High water mark.

QLOWAT

Low water mark.

QMAXPSZ

Largest packet accepted.

QMINPSZ

Smallest packet accepted.

pri

Priority band of interest.

val

The value for the field to be changed.

The strqset() function gives drivers and modules a way to change information about a queue or a particular band of a queue without directly accessing STREAMS data structures.

On success, 0 is returned. EINVAL is returned if an undefined attribute is specified.

The strqset() function can be called from user, interrupt, or kernel context.

strqget(9F), queue(9S)

Writing Device Drivers

STREAMS Programming Guide

When lowering existing values, set QMINPSZ before setting QMAXPSZ; when raising existing values, set QMAXPSZ before setting QMINPSZ.

January 16, 2006 OmniOS