Date: Tue, 31 Aug 2004 19:05:27 +0200 From: Gary Jennejohn <garyj@www.jennejohn.org> To: Dan Nelson <dnelson@allantgroup.com> Cc: "current@freebsd.org" <current@FreeBSD.org> Subject: Re: sysutils/strace wilderness on 6-CURRENT Message-ID: <200408311705.i7VH5R2A073646@peedub.jennejohn.org> In-Reply-To: Message from Dan Nelson <dnelson@allantgroup.com> <20040831151437.GE33896@dan.emsphone.com>
next in thread | previous in thread | raw e-mail | index | archive | help
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]jennejohn.org gj[at]freebsd.org gj[at]denx.de
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200408311705.i7VH5R2A073646>