sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 1 | general valgrind monitor commands: |
philippe | c336038 | 2012-10-21 14:37:14 +0000 | [diff] [blame^] | 2 | help [debug] : monitor command help. With debug: + debugging commands |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 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 : show the nr of errors found so far |
philippe | c336038 | 2012-10-21 14:37:14 +0000 | [diff] [blame^] | 7 | v.info open_fds : show open file descriptors (only if --track-fds=yes) |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 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 vgdb-error <errornr> : debug me at error >= <errornr> |
sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 13 | |
| 14 | memcheck monitor commands: |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 15 | get_vbits <addr> [<len>] |
sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 16 | returns validity bits for <len> (or 1) bytes at <addr> |
| 17 | bit values 0 = valid, 1 = invalid, __ = unaddressable byte |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 18 | Example: get_vbits 0x........ 10 |
| 19 | make_memory [noaccess|undefined |
| 20 | |defined|Definedifaddressable] <addr> [<len>] |
sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 21 | mark <len> (or 1) bytes at <addr> with the given accessibility |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 22 | check_memory [addressable|defined] <addr> [<len>] |
sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 23 | check that <len> (or 1) bytes at <addr> have the given accessibility |
| 24 | and outputs a description of <addr> |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 25 | leak_check [full*|summary] [reachable|possibleleak*|definiteleak] |
sewardj | c8bd1df | 2011-06-26 12:41:33 +0000 | [diff] [blame] | 26 | [increased*|changed|any] |
philippe | 8423490 | 2012-01-14 13:53:13 +0000 | [diff] [blame] | 27 | [unlimited*|limited <max_loss_records_output>] |
sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 28 | * = defaults |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 29 | Examples: leak_check |
| 30 | leak_check summary any |
philippe | 8423490 | 2012-01-14 13:53:13 +0000 | [diff] [blame] | 31 | leak_check full reachable any limited 100 |
philippe | a22f59d | 2012-01-26 23:13:52 +0000 | [diff] [blame] | 32 | block_list <loss_record_nr> |
| 33 | after a leak search, shows the list of blocks of <loss_record_nr> |
| 34 | who_points_at <addr> [<len>] |
| 35 | shows places pointing inside <len> (default 1) bytes at <addr> |
| 36 | (with len 1, only shows "start pointers" pointing exactly to <addr>, |
| 37 | with len > 1, will also show "interior pointers") |
sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 38 | |
| 39 | general valgrind monitor commands: |
philippe | c336038 | 2012-10-21 14:37:14 +0000 | [diff] [blame^] | 40 | help [debug] : monitor command help. With debug: + debugging commands |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 41 | v.wait [<ms>] : sleep <ms> (default 0) then continue |
| 42 | v.info all_errors : show all errors found so far |
| 43 | v.info last_error : show last error found |
| 44 | v.info n_errs_found : show the nr of errors found so far |
philippe | c336038 | 2012-10-21 14:37:14 +0000 | [diff] [blame^] | 45 | v.info open_fds : show open file descriptors (only if --track-fds=yes) |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 46 | v.kill : kill the Valgrind process |
| 47 | v.set gdb_output : set valgrind output to gdb |
| 48 | v.set log_output : set valgrind output to log |
| 49 | v.set mixed_output : set valgrind output to log, interactive output to gdb |
| 50 | v.set vgdb-error <errornr> : debug me at error >= <errornr> |
sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 51 | debugging valgrind internals monitor commands: |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 52 | v.info gdbserver_status : show gdbserver status |
philippe | 93a6a8d | 2012-04-27 22:59:43 +0000 | [diff] [blame] | 53 | v.info memory [aspacemgr] : show valgrind heap memory stats |
| 54 | (with aspacemgr arg, also shows valgrind segments on log ouput) |
sewardj | d6e13d8 | 2011-10-22 20:23:30 +0000 | [diff] [blame] | 55 | v.info scheduler : show valgrind thread state and stacktrace |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 56 | v.set debuglog <level> : set valgrind debug log level to <level> |
| 57 | v.translate <addr> [<traceflags>] : debug translation of <addr> with <traceflags> |
sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 58 | (default traceflags 0b00100000 : show after instrumentation) |
| 59 | An additional flag 0b100000000 allows to show gdbserver instrumentation |
| 60 | |
| 61 | memcheck monitor commands: |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 62 | get_vbits <addr> [<len>] |
sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 63 | returns validity bits for <len> (or 1) bytes at <addr> |
| 64 | bit values 0 = valid, 1 = invalid, __ = unaddressable byte |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 65 | Example: get_vbits 0x........ 10 |
| 66 | make_memory [noaccess|undefined |
| 67 | |defined|Definedifaddressable] <addr> [<len>] |
sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 68 | mark <len> (or 1) bytes at <addr> with the given accessibility |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 69 | check_memory [addressable|defined] <addr> [<len>] |
sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 70 | check that <len> (or 1) bytes at <addr> have the given accessibility |
| 71 | and outputs a description of <addr> |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 72 | leak_check [full*|summary] [reachable|possibleleak*|definiteleak] |
sewardj | c8bd1df | 2011-06-26 12:41:33 +0000 | [diff] [blame] | 73 | [increased*|changed|any] |
philippe | 8423490 | 2012-01-14 13:53:13 +0000 | [diff] [blame] | 74 | [unlimited*|limited <max_loss_records_output>] |
sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 75 | * = defaults |
sewardj | 30b3eca | 2011-06-28 08:20:39 +0000 | [diff] [blame] | 76 | Examples: leak_check |
| 77 | leak_check summary any |
philippe | 8423490 | 2012-01-14 13:53:13 +0000 | [diff] [blame] | 78 | leak_check full reachable any limited 100 |
philippe | a22f59d | 2012-01-26 23:13:52 +0000 | [diff] [blame] | 79 | block_list <loss_record_nr> |
| 80 | after a leak search, shows the list of blocks of <loss_record_nr> |
| 81 | who_points_at <addr> [<len>] |
| 82 | shows places pointing inside <len> (default 1) bytes at <addr> |
| 83 | (with len 1, only shows "start pointers" pointing exactly to <addr>, |
| 84 | with len > 1, will also show "interior pointers") |
sewardj | 3b29048 | 2011-05-06 21:02:55 +0000 | [diff] [blame] | 85 | |
| 86 | monitor command request to kill this process |