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.