Feature requests: list of PIDS, and all threads

George Spelvin linux at horizon.com
Fri Mar 9 15:38:55 UTC 2012


> execve takes down entire multi-threaded program, thus what you propose
> does not make sense: after execve in any thread, your multi-threaded
> program won't be there anymore.
> 
> Did you mean "track thread creation (clone), but not process creation
> ([v]fork that is)"?

I see how what I said was confusing, but I meant drop-on-exec;
when debugging a particular program binary, the goal is to see
all system calls made by that binary.  Which means tracing across
the vfork to see what parameters are passed to execve, but once
you change to a different text image, *then* is a good time
to drop it.

When debugging, execve() is a choke point for information transfer;
it's usually easy to run the target program from the shell if it's
misbehaving.

Also, it just seems more logical to break on a single system call
rather than analyzing the flags to clone().  (Do you depend on
CLONE_THREAD or CLONE_VM?)

Of course what *I* meant and what you, with your greater experience,
think is The Right Thing might be different.




More information about the Strace-devel mailing list