On Tue, 02 Oct 2001, Alfred Perlstein wrote:
> * Peter Pentchev <[EMAIL PROTECTED]> [011002 05:21] wrote:
> > On Sat, Sep 29, 2001 at 11:28:39PM +0100, David Taylor wrote:
> > [snip]
> > > IMO, the below patch is probably the best solution.
> > 
> > Yep, it also fixes the fact that the return value from wait4() needs
> > to be preserved, at least for the return statement of __system().
> 
> Aaaaaaaaaaah!  Forgot about it, I'm going to upgrade my workstation
> now and commit it if it works, probably tonight.
> 
> If someone else can test it earlier, by all means commit it.

Just to say that as I did a make world today, I took the opportunity to test
the patch, and it does fix the bug.

(Old behaviour:
davidt@gattaca:~/C/system-bug$ ./test
Parent: Child A pid = 26271
Calling system...
Child A: exiting
Child B running - pid 26273
Child B: Sending parent (26270) SIGFPE to interrupt wait...
System has returned
Child B entering busy loop...
Child B still running...
Parent exiting - child b should have also exited...
davidt@gattaca:~/C/system-bug$ Child B still running...
killall test2
Terminated

New behaviour:
davidt@gattaca:~/C/system-bug$ ./test
Parent: Child A pid = 27944
Calling system...
Child A: exiting
Child B running - pid 27946
Child B: Sending parent (27943) SIGFPE to interrupt wait...
Child B entering busy loop...
Child B still running...
Child B still running...
Child B still running...
^Z
[1]+  Stopped                 ./test
davidt@gattaca:~/C/system-bug$ bg
[1]+ ./test &
davidt@gattaca:~/C/system-bug$ Child B still running...
kill 27946
Terminated
System has returned
Parent exiting - child b should have also exited...
davidt@gattaca:~/C/system-bug$ 
)

However, I won't be able to commit it, since I'm not a committer :)

-- 
David Taylor
[EMAIL PROTECTED]

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to