module_info(D4) module_info(D4)
NAME
module_info - STREAMS driver and module information structure
SYNOPSIS
#include <sys/types.h>
#include <sys/conf.h>
#include <sys/stream.h>
#include <sys/ddi.h>
DESCRIPTION
When a module or driver is declared, several identification
and limit values can be set. These values are stored in the
module_info structure. These values are used to initialize
the module's or driver's queues when they are created.
USAGE
After the initial declaration, the module_info structure is
intended to be read-only. However, the flow control limits
(mi_hiwat and mi_lowat) and the packet size limits (mi_minpsz
and mi_maxpsz) are copied to the queue(D4) structure, where
they may be modified.
There may be one module_info structure per read and write
queue, or the driver or module may use the same module_info
structure for both the read and write queues.
Structure Definitions
The module_info structure contains the following members:
ushort_t mi_idnum; /* module ID number */
char *mi_idname; /* module name */
long mi_minpsz; /* minimum packet size */
long mi_maxpsz; /* maximum packet size */
ulong_t mi_hiwat; /* high water mark */
ulong_t mi_lowat; /* low water mark */
The mi_idnum field is a unique identifier for the driver or
module that distinguishes the driver or module from the other
drivers and modules in the system.
The mi_idname field points to the driver or module name. The
constant FMNAMESZ limits the length of the name, not including
the terminating NULL. It is currently set to eight
characters.
Copyright 1994 Novell, Inc. Page 1
module_info(D4) module_info(D4)
The mi_minpsz field is the default minimum packet size for the
driver or module queues. This is an advisory limit specifying
the smallest message that can be accepted by the driver or
module.
The mi_maxpsz field is the default maximum packet size for the
driver or module queues. This is an advisory limit specifying
the largest message that can be accepted by the driver or
module.
The mi_hiwat field is the default high water mark for the
driver or module queues. This specifies the number of bytes
of data contained in messages on the queue such that the queue
is considered full and hence flow-controlled.
The mi_lowat field is the default low water mark for the
driver or module queues. This specifies the number of bytes
of data contained in messages on the queue such that the queue
is no longer flow-controlled.
REFERENCES
queue(D4)
NOTICES
Portability
All processors
Copyright 1994 Novell, Inc. Page 2