Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support rr release command #3879

Open
user202729 opened this issue Nov 14, 2024 · 1 comment
Open

Support rr release command #3879

user202729 opened this issue Nov 14, 2024 · 1 comment

Comments

@user202729
Copy link

Motivation: sometimes it is desirable to make rr not track a subprocess spawned by fork+exec.

(see linux - Support in rr-debugger for not recording a subprocess? - Stack Overflow )

I think there could be two ways

  • define rr release <cmd> [args...] command that does something equivalent to the following

     if [[ "$RUNNING_UNDER_RR" == 1 ]]; then
     	rr record --nested=release env --unset=RUNNING_UNDER_RR "$@"
     else
     	"$@"
     fi
  • make a release-on-exec configuration that can be passed to rr record that releases a process on fork+exec. (ideally without affecting other things such as create new thread, fork without exec i.e. process spawn worker process, etc.)

The second would be more convenient, but the first would be more flexible, assume the user can modify and recompile the process.

@rocallahan
Copy link
Collaborator

Maybe rr record --nested=release should just not record at all, and always exec the child directly when not already running under rr? It seems a bit weird to have it not create a recording when run under rr, but have it create a recording when not run under rr. @Keno what do you think?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants