B.10.3 STREAMS Pool Tracing

The STREAMS pool-tracing facility can be used to trace allocations from pool memory. This facility operates similar to the message-tracing feature. The following command formats are available:

    strmdbg -p flush            // flushes the tracing table
    strmdbg -p on               // enables pool tracing
    strmdbg -p off              // disables pool tracing
    strmdbg -p print            // dumps the table too the debugger
 

Code that modifies pool memory after deallocating it can be tracked by tracing recent allocations. The following command provides this facility:

    strmdbg -n on               // enables pool history tracing
    strmdbg -n off              // disables pool history tracing
 

STREAMS maintains a circular log in memory of recent pool operations by address, size, file, and line number. An individual log is kept for each processor. The log can be dumped by issuing the following commands at the kernel debugger prompt:

    da streams!StrmPoolLogList
    da
    da
    ...
 

The next entry in the circular buffer will be marked as will the end of the log for each processor.