Summary of Portland meeting

Robert O'Callahan robert at
Sun Dec 7 16:44:33 PST 2014

We had a meeting of a few rr developers, plus some rr users and potential
users, at the Mozilla event in Portland last week. Here's my brief summary
of that meeting:
-- rr 3.0 is about done. More about scheduling the actual release below.
-- Kyle's making good progress on ARM but we're still well inside the zone
where it could all blow up in our faces.
-- Karl suggested creating hardlinks to mmaped files to reduce the
likelihood that a rebuild will invalidate rr traces. This is a great idea;
see issue #1381 for more info. This will help address some issues raised by
rr users.
-- Cameron asked for ways to speed up debugging sessions. I think that
boils down to supporting reverse execution in gdb. This is currently my
highest-priority next big project for rr.
-- Prior to the meeting I brainstormed with Jason Orendorff about how to
provide the JS debugger API in an rr replay. I'm now confident this is not
very difficult given the availability of reverse execution, though it would
still be a significant amount of work. AFAIK this would break new ground,
as I'm not aware of anyone developing record/replay debugging for a
high-level language with a complex runtime on top of a machine-level
record/replay system. This would lower barriers to entry for Firefox
front-end devs but not Gecko devs, probably.
-- We discussed showing application windows during replay. This would lower
barriers to entry for Gecko and Firefox devs. Maybe this should be higher
-- We briefly discussed differential debugging and other non-gdb debugging
approaches. I agree these are very exciting but I want to continue focusing
on a short path to boosting Gecko/Firefox development with rr.
-- I'd like to add a "rr ps" command. Extracting pids to attach to from a
trace is something I find myself having to do frequently (especially with
e10s). Likewise "rr replay -p" should take the name of an executable as
well as a pid. These are very easy to do.

After the meeting I also mentioned to Kyle that I'd like to change rr's
command-line syntax a bit. Currently we have "global options" and "command
options"; the former can only appear before the command name, while the
latter can only appear after the command name. Some single-letter options
are used for both global options and command options. I think we should
make single-letter global options all capitals and single-letter command
options all be lowercase, and allow global options to appear anywhere on
the command line. I'd also like to make "rr dump" (and future commands that
take a tracedir argument) default to ~/.rr/latest-trace. If we see a
lowercase option before any command name, we assume an implied "run". I'd
like to make these changes before releasing 3.0 since the later we make
them the more people and scripts we will break.

One other thing --- I don't currently have the ability to moderate the rr
list, so if you post to the list with a different address to your
subscription address your message will go into limbo.

oIo otoeololo oyooouo otohoaoto oaonoyooonoeo owohooo oioso oaonogoroyo
owoiotoho oao oboroootohoeoro oooro osoiosotoeoro owoiololo oboeo
osouobojoeocoto otooo ojouodogomoeonoto.o oAogoaoiono,o oaonoyooonoeo
osoaoyoso otooo oao oboroootohoeoro oooro osoiosotoeoro,o o‘oRoaocoao,o’o
oaonosowoeoroaoboloeo otooo otohoeo ocooouoroto.o oAonodo oaonoyooonoeo
osoaoyoso,o o‘oYooouo ofooooolo!o’o owoiololo oboeo oiono odoaonogoeoro
otohoeo ofoioroeo ooofo ohoeololo.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the rr-dev mailing list