This is the mail archive of the
mailing list for the Cygwin project.
fork.cc (frok::parent) problems after 3-13-06 snapshot
- From: Steve <pooey66 at sbcglobal dot net>
- To: cygwin at cygwin dot com
- Date: Wed, 11 Oct 2006 05:54:04 +0000 (UTC)
- Subject: fork.cc (frok::parent) problems after 3-13-06 snapshot
I origianly posted this problem on the group on Oct.21 2006 under title "1.5.21
Forked background processes". The problem involves forking processes in the
background using `backticks` from a sh script. When doing this, the parent and
child (backticked) processes will both die shortly and without error, although
ps will still show the child process as alive. You can reproduce this problem
using the example I added in my original post. Other folks I know and on the
group were able to reproduce this problem with little effort.
Since then I nailed down the culprit to a change that happened in method
frok::parent in file fork.cc. The change to this method first appreared in the
snapshot from 3-13-06. Here is the change log entry for this method:
(frok::parent): Reorganize to allow retry of failed child creation if
child signalled that it was ok to do so.
Reverting this change (to the 3-9-06 snapshot), as well as the change to fork.cc
(resume_child) in the same snapshot, fixed the problem. Reverting this, of
course, invalidates the fork_retry (now proc_retry) CYGWIN environment option,
which was one of the reasons this method was reorginized to accomidate.
I can't quite nail down the problem within this method however, but I'm guessing
it has something to do with the retry iteration that's present. I consider this
a rather nasty bug.
Thanks for your attention and thanks to the folks that responded to this in my
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html