File: rr.1

package info (click to toggle)
rr 2.0.0-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 2,376 kB
  • ctags: 3,373
  • sloc: cpp: 17,766; ansic: 5,798; python: 604; asm: 312; sh: 308; makefile: 10
file content (120 lines) | stat: -rw-r--r-- 3,624 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
.TH RR "1" "April 2014" "rr - record and replay application executions" "User Commands"
.SH NAME
rr \- record and replay application execution
.SH SYNOPSIS
.B rr
[\fIOPTION\fR] \fI(record|replay|dump) \fR[\fIOPTION\fR]... [\fIARG\fR]...
.SH DESCRIPTION
.PP
Common options
.TP
\fB\-c\fR, \fB\-\-checksum=\fR{on\-syscalls,on\-all\-events}|FROM_TIME
compute and store (during recording) or
read and verify (during replay) checksums
of each of a tracee's memory mappings either
at the end of all syscalls (`on\-syscalls'),
at all events (`on\-all\-events'), or
starting from a global timepoint FROM_TIME
.TP
\fB\-d\fR, \fB\-\-dump\-on=\fR<SYSCALL_NUM|\-SIGNAL_NUM>
dump memory at SYSCALL or SIGNAL to the
file `[trace_dir]/[tid].[time]_{rec,rep}':
`_rec' for dumps during recording, `_rep'
for dumps during replay
.TP
\fB\-f\fR, \fB\-\-force\-enable\-debugger\fR
always allow emergency debugging, even
when it doesn't seem like a good idea, for
example if stderr isn't a tty.
.TP
\fB\-k\fR, \fB\-\-check\-cached\-mmaps\fR
verify that cached task mmaps match \fI/proc/maps\fP
.TP
\fB\-m\fR, \fB\-\-mark\-stdio\fR
mark stdio writes with [rr.<EVENT\-NO>],
where EVENT\-NO is the global trace time at
which the write occures.
.TP
\fB\-t\fR, \fB\-\-dump\-at\fR=\fITIME\fR
dump memory at global timepoint TIME
.TP
\fB\-u\fR, \fB\-\-cpu\-unbound\fR
allow tracees to run on any virtual CPU.
Default is to bind to CPU 0.  This option
can cause replay divergence: use with
caution.
.TP
\fB\-v\fR, \fB\-\-verbose\fR
log messages that may not be urgently
critical to the user
.TP
\fB\-w\fR, \fB\-\-wait\-secs=\fR<NUM_SECS> wait NUM_SECS seconds just after startup,
before initiating recording or replaying
.PP
Syntax for `record'
.IP
rr record [OPTION]... <exe> [exe\-args]...
.TP
\fB\-b\fR, \fB\-\-force\-syscall\-buffer\fR force the syscall buffer preload library
to be used, even if that's probably a bad
idea
.TP
\fB\-c\fR, \fB\-\-num\-cpu\-ticks=\fR<NUM>
maximum number of 'CPU ticks' (currently
retired conditional branches) to allow a
task to run before interrupting it
.TP
\fB\-e\fR, \fB\-\-num\-events=\fR<NUM>
maximum number of events (syscall
enter/exit, signal, CPU interrupt, ...)
to allow a task before descheduling it
.TP
\fB\-i\fR, \fB\-\-ignore\-signal=\fR<SIG>
block <SIG> from being delivered to tracees.
Probably only useful for unit tests.
.TP
\fB\-n\fR, \fB\-\-no\-syscall\-buffer\fR
disable the syscall buffer preload library
even if it would otherwise be used
.PP
Syntax for `replay'
.IP
rr replay [OPTION]... <trace\-dir>
.TP
\fB\-a\fR, \fB\-\-autopilot\fR
replay without debugger server
.TP
\fB\-f\fR, \fB\-\-onfork=\fR<PID>
start a debug server when <PID> has been
fork()d, AND the target event has been
reached.
.TP
\fB\-g\fR, \fB\-\-goto=\fR<EVENT\-NUM>
start a debug server on reaching <EVENT\-NUM>
in the trace.  See \fB\-m\fR above.
.TP
\fB\-p\fR, \fB\-\-onprocess=\fR<PID>
start a debug server when <PID> has been
exec()d, AND the target event has been
reached.
.TP
\fB\-q\fR, \fB\-\-no\-redirect\-output\fR
don't replay writes to stdout/stderr
.TP
\fB\-s\fR, \fB\-\-dbgport=\fR<PORT>
only start a debug server on <PORT>;
don't automatically launch the debugger
client too.
.PP
Syntax for `dump`
.IP
rr dump [OPTIONS] <trace_dir> <event\-spec>...
.IP
Event specs can be either an event number like `127', or a range
like `1000\-5000'.  By default, all events are dumped.
\fB\-r\fR, \fB\-\-raw\fR                  dump trace frames in a more easily
.IP
machine\-parseable format instead of the
default human\-readable format
.PP
A command line like `rr (\fB\-h\fR|\-\-help|help)...' will print this message.