| general valgrind monitor commands: |
| help [debug] : monitor command help. With debug: + debugging commands |
| v.wait [<ms>] : sleep <ms> (default 0) then continue |
| v.info all_errors : show all errors found so far |
| v.info last_error : show last error found |
| v.info n_errs_found [msg] : show the nr of errors found so far and the given msg |
| v.info open_fds : show open file descriptors (only if --track-fds=yes) |
| v.kill : kill the Valgrind process |
| v.set gdb_output : set valgrind output to gdb |
| v.set log_output : set valgrind output to log |
| v.set mixed_output : set valgrind output to log, interactive output to gdb |
| v.set merge-recursive-frames <num> : merge recursive calls in max <num> frames |
| v.set vgdb-error <errornr> : debug me at error >= <errornr> |
| |
| memcheck monitor commands: |
| get_vbits <addr> [<len>] |
| returns validity bits for <len> (or 1) bytes at <addr> |
| bit values 0 = valid, 1 = invalid, __ = unaddressable byte |
| Example: get_vbits 0x........ 10 |
| make_memory [noaccess|undefined |
| |defined|Definedifaddressable] <addr> [<len>] |
| mark <len> (or 1) bytes at <addr> with the given accessibility |
| check_memory [addressable|defined] <addr> [<len>] |
| check that <len> (or 1) bytes at <addr> have the given accessibility |
| and outputs a description of <addr> |
| leak_check [full*|summary] |
| [kinds kind1,kind2,...|reachable|possibleleak*|definiteleak] |
| [heuristics heur1,heur2,...] |
| [increased*|changed|any] |
| [unlimited*|limited <max_loss_records_output>] |
| * = defaults |
| where kind is one of definite indirect possible reachable all none |
| where heur is one of stdstring newarray multipleinheritance all none* |
| Examples: leak_check |
| leak_check summary any |
| leak_check full kinds indirect,possible |
| leak_check full reachable any limited 100 |
| block_list <loss_record_nr> |
| after a leak search, shows the list of blocks of <loss_record_nr> |
| who_points_at <addr> [<len>] |
| shows places pointing inside <len> (default 1) bytes at <addr> |
| (with len 1, only shows "start pointers" pointing exactly to <addr>, |
| with len > 1, will also show "interior pointers") |
| |
| general valgrind monitor commands: |
| help [debug] : monitor command help. With debug: + debugging commands |
| v.wait [<ms>] : sleep <ms> (default 0) then continue |
| v.info all_errors : show all errors found so far |
| v.info last_error : show last error found |
| v.info n_errs_found [msg] : show the nr of errors found so far and the given msg |
| v.info open_fds : show open file descriptors (only if --track-fds=yes) |
| v.kill : kill the Valgrind process |
| v.set gdb_output : set valgrind output to gdb |
| v.set log_output : set valgrind output to log |
| v.set mixed_output : set valgrind output to log, interactive output to gdb |
| v.set merge-recursive-frames <num> : merge recursive calls in max <num> frames |
| v.set vgdb-error <errornr> : debug me at error >= <errornr> |
| debugging valgrind internals monitor commands: |
| v.do expensive_sanity_check_general : do an expensive sanity check now |
| v.info gdbserver_status : show gdbserver status |
| v.info memory [aspacemgr] : show valgrind heap memory stats |
| (with aspacemgr arg, also shows valgrind segments on log ouput) |
| v.info exectxt : show stacktraces and stats of all execontexts |
| v.info scheduler : show valgrind thread state and stacktrace |
| v.set debuglog <level> : set valgrind debug log level to <level> |
| v.translate <addr> [<traceflags>] : debug translation of <addr> with <traceflags> |
| (default traceflags 0b00100000 : show after instrumentation) |
| An additional flag 0b100000000 allows to show gdbserver instrumentation |
| |
| memcheck monitor commands: |
| get_vbits <addr> [<len>] |
| returns validity bits for <len> (or 1) bytes at <addr> |
| bit values 0 = valid, 1 = invalid, __ = unaddressable byte |
| Example: get_vbits 0x........ 10 |
| make_memory [noaccess|undefined |
| |defined|Definedifaddressable] <addr> [<len>] |
| mark <len> (or 1) bytes at <addr> with the given accessibility |
| check_memory [addressable|defined] <addr> [<len>] |
| check that <len> (or 1) bytes at <addr> have the given accessibility |
| and outputs a description of <addr> |
| leak_check [full*|summary] |
| [kinds kind1,kind2,...|reachable|possibleleak*|definiteleak] |
| [heuristics heur1,heur2,...] |
| [increased*|changed|any] |
| [unlimited*|limited <max_loss_records_output>] |
| * = defaults |
| where kind is one of definite indirect possible reachable all none |
| where heur is one of stdstring newarray multipleinheritance all none* |
| Examples: leak_check |
| leak_check summary any |
| leak_check full kinds indirect,possible |
| leak_check full reachable any limited 100 |
| block_list <loss_record_nr> |
| after a leak search, shows the list of blocks of <loss_record_nr> |
| who_points_at <addr> [<len>] |
| shows places pointing inside <len> (default 1) bytes at <addr> |
| (with len 1, only shows "start pointers" pointing exactly to <addr>, |
| with len > 1, will also show "interior pointers") |
| |
| monitor command request to kill this process |