Intel® Inspector User Guide for Linux* OS

ID 767796
Date 7/13/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

Extended Debugging Commands

Intel Inspector offers a set of command extensions to use within an interactive debugging session during analysis.

Command Argument: prob-brk-id

prob-brk-id is an integer value that identifies the problem breakpoint you want to disable or re-enable. The debugger displays this number prior to the problem description when reporting a breakpoint, as in the 1 value shown in the following example: 1: Stopped at invalid write.

You can view valid prob-brk-id values using the show-problem-breakpoints command extension.

NOTE:

Do not confuse prob-brk-id values assigned by the debugger with problem IDs prefaced with the letter P in Intel Inspector result data.

Command Argument: type

type identifies the problem types you want to stop or not stop at during execution. Choose from the following according to the type of analysis: memory or threading.

Memory Problem Breakpoint Types

Description

mcpinvalid

Incorrect memcpy call

dinvalid

Invalid deallocation

rinvalid

Invalid memory access

winvalid

rpinvalid

Invalid partial memory access

dmm

Mismatched allocation/deallocation

runinit

Uninitialized memory access

rpuninit

Uninitialized partial memory access

all

All valid memory problem types

Threading Problem Breakpoint Types

Description

rwrace

Data race

wwrace

ddlk

Deadlock

lahv

Lock Hierarchy Violation

all

All valid threading problem types

NOTE:

Memory and resource leak problem types are not included because they are detected after execution completes and therefore cannot result in breakpoints.

Available Commands

Preface all extended debugging commands with monitor to alert the debugger to pass them to the Intel Inspector command handler.

Use This Command Prefaced With monitor

To Do This

begin-analysis

Short form: ba

Begin analyzing and reporting problems.

Use after starting an analysis configured with the Select analysis start location with debugger option.

NOTE:

You cannot stop and restart the analysis at a subsequent code breakpoint.

break-problem-type [type [type] [...] on | off]

Short form: bpt [type [type] [...] on | off]

NOTE:

This command is not available if you start the interactive debugging session using the Debug This Problem function.

Turn on or off breaking on specific problem types.

Available problem types differ for memory and threading analyses. Use the help extended debugging command to display the appropriate list.

In this example, the debugger breaks during a memory analysis only when problem breakpoints for invalid memory accesses are detected:

monitor break-problem-type rinvalid winvalid on

In this example, the debugger breaks during a threading analysis for all detected problem breakpoints except deadlocks.

monitor break-problem-type ddlk off

If you omit arguments: The Intel Inspector show the current status (on or off) of all problem breakpoint types for the analysis type.

disable-problem-breakpoint prob-brk-id

Short form: dpb prob-brk-id

Do not break at the specified problem breakpoint if it is detected again.

This command is most useful for a problem breakpoint that occurs multiple times, such as inside a loop.

Disabled problem breakpoints are not persistent between analysis runs.

enable-problem-breakpoint prob-brk-id

Short form: epb prob-brk-id

Resume breaking at the specified problem breakpoint if it is detected again.

help

Display the list of extended debugger commands provided by the Intel Inspector.

show-last-problem

Short form: slp

Show the problem breakpoint ID and a short description for the last-detected problem.

If execution is currently stopped at a problem breakpoint, the debugger displays information for the current problem.

show-problem-breakpoints

Short form: spb

Show a list of problem breakpoint IDs with short problem descriptions.

If you use the Debug This Problem function to launch the interactive debugging session, this list contains only the set of selected problems and does not change. Otherwise, this list starts empty and grows as each problem breakpoint is encountered.