1 general valgrind
monitor commands
:
2 help
[debug
] : monitor command help. With debug
: + debugging commands
3 v.wait
[<ms
>] : sleep <ms
> (default
0) then continue
4 v.
info all_errors
: show all errors found so far
5 v.
info last_error
: show last error found
6 v.
info n_errs_found
[msg
] : show the nr of errors found so far and the given msg
7 v.
info open_fds
: show open file descriptors
(only
if --track
-fds
=yes
)
8 v.kill
: kill the Valgrind process
9 v.
set gdb_output
: set valgrind output to gdb
10 v.
set log_output
: set valgrind output to
log
11 v.
set mixed_output
: set valgrind output to
log, interactive output to gdb
12 v.
set merge
-recursive-frames
<num
> : merge
recursive calls in
max <num
> frames
13 v.
set vgdb
-error
<errornr
> : debug me at error
>= <errornr
>
15 memcheck
monitor commands
:
16 get_vbits
<addr
> [<len
>]
17 returns validity bits
for <len
> (or
1) bytes at
<addr
>
18 bit
values 0 = valid
, 1 = invalid
, __
= unaddressable byte
19 Example
: get_vbits
0x........
10
20 make_memory
[noaccess|undefined
21 |defined|Definedifaddressable
] <addr
> [<len
>]
22 mark
<len
> (or
1) bytes at
<addr
> with the given accessibility
23 check_memory
[addressable|defined
] <addr
> [<len
>]
24 check that
<len
> (or
1) bytes at
<addr
> have the given accessibility
25 and outputs a description of
<addr
>
26 leak_check
[full
*|summary
]
27 [kinds kind1
,kind2
,...|reachable|possibleleak
*|definiteleak
]
28 [heuristics heur1
,heur2
,...
]
29 [increased
*|changed|
any]
30 [unlimited
*|limited
<max_loss_records_output
>]
32 where kind is one of definite indirect possible reachable all
none
33 where heur is one of stdstring newarray multipleinheritance all
none*
35 leak_check summary
any
36 leak_check full kinds indirect
,possible
37 leak_check full reachable
any limited
100
38 block_list
<loss_record_nr
>
39 after a leak search
, shows the list of blocks of
<loss_record_nr
>
40 who_points_at
<addr
> [<len
>]
41 shows places pointing inside
<len
> (default
1) bytes at
<addr
>
42 (with len
1, only shows
"start pointers" pointing exactly to <addr>,
43 with len
> 1, will also
show "interior pointers")
45 general valgrind
monitor commands
:
46 help
[debug
] : monitor command help. With debug
: + debugging commands
47 v.wait
[<ms
>] : sleep <ms
> (default
0) then continue
48 v.
info all_errors
: show all errors found so far
49 v.
info last_error
: show last error found
50 v.
info n_errs_found
[msg
] : show the nr of errors found so far and the given msg
51 v.
info open_fds
: show open file descriptors
(only
if --track
-fds
=yes
)
52 v.kill
: kill the Valgrind process
53 v.
set gdb_output
: set valgrind output to gdb
54 v.
set log_output
: set valgrind output to
log
55 v.
set mixed_output
: set valgrind output to
log, interactive output to gdb
56 v.
set merge
-recursive-frames
<num
> : merge
recursive calls in
max <num
> frames
57 v.
set vgdb
-error
<errornr
> : debug me at error
>= <errornr
>
58 debugging valgrind internals
monitor commands
:
59 v.
do expensive_sanity_check_general
: do an expensive sanity check now
60 v.
info gdbserver_status
: show gdbserver
status
61 v.
info memory
[aspacemgr
] : show valgrind heap memory stats
62 (with aspacemgr
arg, also shows valgrind segments
on log ouput
)
63 v.
info exectxt
: show stacktraces and stats of all execontexts
64 v.
info scheduler
: show valgrind thread state and stacktrace
65 v.
set debuglog
<level
> : set valgrind debug
log level to
<level
>
66 v.
translate <addr
> [<traceflags
>] : debug translation of
<addr
> with
<traceflags
>
67 (default traceflags
0b00100000
: show after instrumentation
)
68 An additional flag
0b100000000 allows to
show gdbserver instrumentation
70 memcheck
monitor commands
:
71 get_vbits
<addr
> [<len
>]
72 returns validity bits
for <len
> (or
1) bytes at
<addr
>
73 bit
values 0 = valid
, 1 = invalid
, __
= unaddressable byte
74 Example
: get_vbits
0x........
10
75 make_memory
[noaccess|undefined
76 |defined|Definedifaddressable
] <addr
> [<len
>]
77 mark
<len
> (or
1) bytes at
<addr
> with the given accessibility
78 check_memory
[addressable|defined
] <addr
> [<len
>]
79 check that
<len
> (or
1) bytes at
<addr
> have the given accessibility
80 and outputs a description of
<addr
>
81 leak_check
[full
*|summary
]
82 [kinds kind1
,kind2
,...|reachable|possibleleak
*|definiteleak
]
83 [heuristics heur1
,heur2
,...
]
84 [increased
*|changed|
any]
85 [unlimited
*|limited
<max_loss_records_output
>]
87 where kind is one of definite indirect possible reachable all
none
88 where heur is one of stdstring newarray multipleinheritance all
none*
90 leak_check summary
any
91 leak_check full kinds indirect
,possible
92 leak_check full reachable
any limited
100
93 block_list
<loss_record_nr
>
94 after a leak search
, shows the list of blocks of
<loss_record_nr
>
95 who_points_at
<addr
> [<len
>]
96 shows places pointing inside
<len
> (default
1) bytes at
<addr
>
97 (with len
1, only shows
"start pointers" pointing exactly to <addr>,
98 with len
> 1, will also
show "interior pointers")
100 monitor command request to kill this process