Run-Time Parameters
These parameters can be set using the no -o command or the no -d command, and they become effective immediately.
If a user tries to set a load-time parameter to its default value or to a new value using the no command, it returns an error. The no -a Parameter and no -o Parameter commands show the parameter's current value.
Item | Description |
---|---|
strmsgsz | Specifies the maximum number of bytes that a single system call can pass to a STREAM to be placed into the data part of a message (in M_DATA blocks). Any write subroutine exceeding this size will be broken into multiple messages. A putmsg subroutine with a data part exceeding this size will fail returning an ERANGE error code. The default value is 0. |
strctlsz | Specifies the maximum number of bytes that a single system call can pass to a STREAM to be placed into the control part of a message (in an M_PROTO or M_PCPROTO block). A putmsg subroutine with a control part exceeding this size will fail returning an ERANGE error code. The default value is 1024. |
strthresh | Specifies the maximum number of bytes STREAMS are allowed
to allocate. When the threshold is passed, users without the appropriate
privilege will not be allowed to open STREAMS, push modules, or write
to STREAMS devices. The ENOSR error code is returned. The threshold
applies only to the output side; therefore, data coming into the system
is not affected and continues to work properly. A value of 0 indicates
there is no threshold. The strthresh parameter represents a percentage of the value of the thewall parameter, and its value can be set between 0 and 100, inclusively. The thewall parameter indicates the maximum number of bytes that can be allocated by STREAMS and sockets using the net_malloc subroutine. The user can change the value of the thewall parameter using the no command. When the user changes the value of the thewall parameter, the threshold gets updated accordingly. The default value is 85, indicating the threshold is 85% of the value of the thewall parameter. |
psetimers | Specifies the maximum number of timers allocated. In the operating system, the STREAM subsystem allocates a certain number of timer structures at initialization time, so the STREAMS driver or module can register the timeout requests. Lowering this value is not allowed until the system reboots, at which time it returns to its default value. The default value is 20. |
psebufcalls | Specifies the maximum number of bufcalls allocated. In the operating system, the STREAM subsystem allocates a certain number of bufcall structures at initialization time. When an allocb subroutine fails, the user can register requests for the bufcall subroutine. Lowering this value is not allowed until the system reboots, at which time it returns to its default value. The default value is 20. |
strturncnt | Specifies the maximum number of requests handled by the currently running thread for module- or elsewhere-level STREAMS synchronization. The module-level synchronization works in such a way that only one thread can run in the module at any given time, and all other threads trying to acquire the same module enqueue their requests and exit. After the currently running thread completes its work, it dequeues all the previously enqueued requests one at a time and starts them. If there are large numbers of requests enqueued in the list, the currently running thread must serve everyone. To eliminate this problem, the currently running thread serves only the strturncnt number of threads. After that, a separate kernel thread starts all the pending requests. The default value is 15. |
lowthresh | Specifies the maximum number of bytes (in percentage) allocated by the thewall parameter using allocb for the BPRI_LO priority. When the total amount of memory allocated by the net_malloc subroutine reaches this threshold, the allocb request for the BPRI_LO priority returns 0. The lowthresh parameter can be set to any value between 0 and 100, inclusively. The default value is 90, indicating the threshold is at 90% of the value of the thewall parameter. |
medthresh | Specifies the maximum number of bytes (in percentage) allocated by the thewall parameter using allocb for the BPRI_MED priority. When the total amount of memory allocated by the net_malloc subroutine reaches this threshold, the allocb request for the BPRI_MED priority returns 0. The medthresh parameter can be set to any value between 0 and 100, inclusively. The default value is 95, indicating the threshold is 95% of the value of the thewall parameter. |