sysutils/strace wilderness on 6-CURRENT

Gary Jennejohn garyj at
Tue Aug 31 10:05:46 PDT 2004

Dan Nelson writes:
> In the last episode (Aug 31), Vladimir Grebenschikov said:
> > (fresh -CURREMT and fresh strace from ports, UP machine)
> > 
> > It silmple does nothing - sleeps foreaver in suspended:
> > 
> > # strace /bin/ls
> > ^T
> > load: 0.14  cmd: strace 98957 [suspended] 0.00u 0.00s 0% 760k
> > ^C
> > #
> This has happened on 5.x for ages.  The quick fix is to ^Z, then fg, or
> kill -CONT the hung strace process from another vty.  I don't know what
> strace does different from truss that makes it hang.  Nowadays, truss
> does almost as good a job as strace, so I don't use it as often as I
> used to.  The only thing I miss is strace's ability to print the name
> of blocking syscalls (read or sleep for example) as it waits.

I fixed a bug like this in strace for Linux. The SIGCHLD handler was
being set too late and the child (through some wacky handling of
SIGCHLD in the Linux kernel) got into a state where it never returned
the expected status in wait(). Both the child and strace ended up
hanging. kill -CONT also got things going there. Maybe FreeBSD has
a similar problem?

Gary Jennejohn / garyj[at] gj[at] gj[at]

More information about the freebsd-current mailing list