Hi, On 26 janv. 06, at 18:13, Dan Nelson wrote:
$ truss ls truss: cannot open /proc/4509/mem: No such file or directory $ truss ls truss: PIOCWAIT: Input/output errorThe child process probably hasn't been fully started by the time the parent tries to attach to it. Adding a sleep(1) inside setup_and_wait() in setup.c just before it tries to open /proc/%d/mem is a quick hack that works. A better solution would be to retry the open and ioctl calls if they fail, after a short wait (but only doing so for a couple seconds in case there was a problem starting the child process).
hmmm I see. In fact, I have the "cannot open" error for a normal truss usage, and if I repeat the truss command very fast, I got the second error (PIOCWAIT: Input/output error). Slowing down the process is an interesting workaround :
truss ls -> fails 100% of the time ktrace truss ls -> fail most of the time truss `which ls` -> works great.
I have no idea why the PIOCWAIT ioctl would fail like that
neither have I... In fact, the 128 items limitation of my procfs puzzles me even more.
thanks Patrick PRONIEWSKI -- Administrateur Système - SENTIER - Université Lumière Lyon 2 _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[EMAIL PROTECTED]"
