Subject: Re: Warning popping up during -j builds
To: Frank Kardel <kardel@netbsd.org>
From: Quentin Garnier <cube@cubidou.net>
List: tech-userlevel
Date: 08/18/2006 18:35:58
--VwTp6yk3ZBqxDsVT
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Aug 18, 2006 at 06:18:27PM +0200, Frank Kardel wrote:
[...]
> I don't think we are on the right track here.
> One thing that puzzles me is that make apparently complains
> about childs it does not know about. My understanding of Unix
> principles is that SIGCLD and/or the wait-results is either
> delivered to the immediate parent or init in case a process is orphaned.
> That means make must have forked the childs it claims to know nothing
> about. I cannot see how a sub-make(/process) could fork processes where t=
he

In that case, no.  make forks sh to run sets.subr, which in turns forks a
make process.  File-descriptors are kept open all along (it's probably part
of the problem, although the child make would complain in turn if the fds
were closed and still it got -J).

> grand parent gets to see the exit codes via wait(pid)(). Where did I miss
> something here ? I still have the impression that the job list handling m=
ay
> be incomplete (unless, of course, make has pid 1 :-)). It may be that the
> forks happen at a(nother) place (e.g. library) where they are not=20
> entered in the job
> list. If that is the case (and can be proven), then we should get rid of=
=20
> the message
> as it is of limited (and confusing) value if we are not able by design=20
> to catch all
> forked pids in the job list. If the joblist is definitely complete, we=20
> have a coordination
> issue.

There's an issue somewhere, clearly, but otoh, no-one really bothered to
debug it in about three years.

--=20
Quentin Garnier - cube@cubidou.net - cube@NetBSD.org
"When I find the controls, I'll go where I like, I'll know where I want
to be, but maybe for now I'll stay right here on a silent sea."
KT Tunstall, Silent Sea, Eye to the Telescope, 2004.

--VwTp6yk3ZBqxDsVT
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (NetBSD)

iQEVAwUBROXsbtgoQloHrPnoAQJ5VwgAt1N6rNzw5Z7rZ5uh+WPzU6eSlTqHFewh
f/O4hUHvzcVSTmrnIBPsGRmWlk7ZXfxf0/NGyzU3siTsuE5hMHCsDEtc6f/4ZYrc
6tPVmy8zApm1IbPpUfK6ydt8EoUDhvazdnUtA49MdM2b8PY+OfYrZiSLsqqmERjG
Mkw3bMfiyH44JxXa0mIhhstOyc1Is2fyEzht0nxVvkrvOmiFdoglB/uDmy8tn7NW
bkq+GMLWbNYzmQND0ihzLdRfXcjIIqe40ghX2Ew+9ZUzsSJUYkKhJI7Qx5IGhY9e
oNvWHJLQqtKAT3P6aTU4kZw0fwjJBw3g9KlFQIMQ+pQQ0q7z0X+I2Q==
=yiGj
-----END PGP SIGNATURE-----

--VwTp6yk3ZBqxDsVT--