Solaris Tunable Parameters Reference Manual

kmem_stackinfo

Description

If the kmem_stackinfo variable is enabled in the /etc/system file at kernel thread creation time, the kernel thread stack is filled with a specific pattern instead of filled with zeros. During kernel thread execution, this kernel thread stack pattern is progressively overwritten. A simple count from the stack top until the pattern is not found gives a high watermark value, which is the maximum kernel stack space used by a kernel thread. This mechanism allows the following features:

  • Compute the percentage of kernel thread stack really used (a high watermark) for current kernel threads in the system

  • When a kernel thread ends, the system logs the last kernel threads that have used the most of their kernel thread stacks before dying to a small circular memory buffer

Data Type

Unsigned integer

Default

0 (disabled)

Range

0 (disabled) or 1 (enabled)

Dynamic?

Yes

Validation

None

When to Change

When you want to monitor kernel thread stack usage. Keep in mind that when kmem_stackinfo is enabled, the performance of creating and deleting kthreads is decreased. For more information, see the Chapter 5, Built-In Commands, in Solaris Modular Debugger Guide.

Zone Configuration

This parameter must be set in the global zone.

Commitment Level

Unstable