Revision
8144 -
Directory Listing
-
[select for diffs]
Modified
Fri Sep 16 22:14:07 2016 UTC
(7 years, 7 months ago)
by
laffer1
Diff to
previous 6515
- Use pid_t type instead of just int.
- Put arguments for print_syscall_ret() function in proper order.
Bug was introduced in r192025.
- Remove unused variables.
- Fix warnings about comparing signed and unsigned ints.
- Style(9) cleanup.
- Remove unused variables.
- Remove redundant return after err(3) call.
- Fix detaching under some circumstances.
When truss is detaching from very active process it is possible to
hang on waitpid(2) in restore_proc() forever, because
ptrace(PT_SYSCALL) must be called before detaching, to allow the
debugging process to continue execution. Also when truss called with
'-c' argument, it does not print anything after detach, because it
immediately exits from restore_proc().
To fix these two problems make detaching deferred, but then it is
impossible to detach from a process which does not do any system call.
To fix this issue use sigaction(2) instead of signal(3) to disable
SA_RESTART flag for waitpid(2) that makes it non-restartable. Remove
global variable child_pid, because now detaching is handled in context
where child's pid is known.
- Make truss thread-aware.
Revision
3 -
Directory Listing
-
[select for diffs]
Added
Sat Feb 25 02:29:52 2006 UTC
(18 years, 2 months ago)
by
laffer1
This commit was generated by cvs2svn to compensate for changes in r2, which
included commits to RCS files with non-trunk default branches.