truss problems
Jonas Wolz
jonas.wolz at freenet.de
Tue Apr 11 13:21:22 UTC 2006
Am Montag, 10. April 2006 11:45 schrieb Jonas Wolz:
> Other applications I tested (xedit, bash) seem to work fine.
I've made some more tests and it seems to me that the "fork following" feature
(-f switch) of truss obviously is buggy.
Even the following simple shell script sometimes (in about a third of the
tests) provokes the bug:
-- begin test.sh
#!/bin/sh
/bin/echo Test
/bin/echo Test
-- end test.sh
If I call "truss -f sh test.sh" I get errors when execve() is called to
start /bin/echo, for example: (56179 is the first /bin/echo (started without
error), 56178 is /bin/sh)
56179: writev(0x1,0x804b030,0x2) = 5 (0x5)
56179: exit(0x0)
process exit, rval = 0
56178: wait4(0xffffffff,0xbfbfde98,0x2,0x0) = 56179 (0xdb73)
56178: fork() = 56181 (0xdb75)
56178: getpgrp() = 56177 (0xdb71)
56181: close(10) = 0 (0x0)
56181: execve("/bin/echo",<missing argument>,<missing argument>)
truss: PIOCWAIT top of loop: Input/output error
56181: execve("/bin/echo",<missing argument>,<missing argument>) = 0 (0x0)
56181: mmap(0x0,3600,(0x3)PROT_READ|PROT_WRITE,(0x1000)MAP_ANON,-1,0x0) =
671539200 (0x2806e000)
56181: munmap(0x2806e000,0xe10) = 0 (0x0)
56181: __sysctl(0xbfbfded8,0x2,0x2806aa18,0xbfbfded4,0x0,0x0) = 0 (0x0)
I also tested the script with the 6.1-BETA4 Boot-CD. The bug seems only to be
triggered on the *first run* of the script there, but it leaves 3 zombie
processes per run behind (even if no error message is shown).
Jonas
More information about the freebsd-stable
mailing list