Emulate PTRACE_O_EXITKILL

Open
#3,922 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
45/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
cpp, linux

Research direction

Start with the PTRACE_O_EXITKILL comment in src/Task.cc around line 3744, then trace how rr handles ptrace options for recorded tracees. Add support for tracees using PTRACE_O_EXITKILL while preserving the ability to record rr replay, and verify the relevant recording and replay behavior.

Written by the indexing model from the issue text.

Description

As the comment at https://github.com/rr-debugger/rr/blob/aaed29dc0324444e36503a26dcec96731d1942b0/src/Task.cc#L3744 points out, PTRACE_O_EXITKILL was added in kernel 3.8. Our minimum kernel version is well past that these days, but ironically, rr itself doesn't support recording tracees PTRACE_O_EXITKILL so we can't use it unconditionally without breaking the ability to rr record rr replay. Supporting PTRACE_O_EXITKILL in tracees would allow us to use PTRACE_O_EXITKILL unconditionally.

I don't think this would be difficult, might make a good first bug for someone.

Dominant language
C++
Stars
10.7k
Forks
662
Avg merge
2d 3h
Merged PRs (30d)
2

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from rr-debugger/rr

All issues in rr-debugger/rr

Similar issues

More C++ issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.