Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 13 Feb 2012 17:28:25 +0200
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Dmitry Mikulin <dmitrym@juniper.net>
Cc:        freebsd-current Current <freebsd-current@freebsd.org>, Marcel Moolenaar <marcelm@juniper.net>
Subject:   Re: [ptrace] please review follow fork/exec changes
Message-ID:  <20120213152825.GH3283@deviant.kiev.zoral.com.ua>
In-Reply-To: <4F3478B3.9040809@juniper.net>
References:  <20120204204218.GC3283@deviant.kiev.zoral.com.ua> <4F3043E2.6090607@juniper.net> <20120207121022.GC3283@deviant.kiev.zoral.com.ua> <4F318D74.9030506@juniper.net> <4F31C89C.7010705@juniper.net> <4F3318AD.6000607@juniper.net> <20120209122908.GD3283@deviant.kiev.zoral.com.ua> <4F34311A.9050702@juniper.net> <20120210001725.GJ3283@deviant.kiev.zoral.com.ua> <4F3478B3.9040809@juniper.net>

next in thread | previous in thread | raw e-mail | index | archive | help

--NvQORXwiARETsYmR
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

I looked at the orphan.patch.

Am I right that the orphans are the real childs of the process which
are temporarily reparented to the debugger ? Whatever they are, a comment
should be added to proc.h describing what does it mean.

Please provide me with a test case that demonstrates the issue
solved by the change.

The new LIST_FOREACH(&q->p_orphans) body is copy/pasted, together
with the comments, from the LIST_FOREACH(&q->p_children). Can the
common code be moved into some function ?

Shouldn't there be some assertion in proc_reparent() for the case when
we remove child from the orphans list, that the child is no longer
debugged ?

Why in proc_reparent(), in the case of P_TRACED child, you do
PROC_UNLOC/PROC_LOCK ?

It seems that now wait4(2) can be called from the real (non-debugger)
parent first and result in the call to proc_reap(), isn't it ? We would
then just reparent the child back to the caller, still leaving the
zombie and confusing debugger.

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

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (FreeBSD)

iEYEARECAAYFAk85LBgACgkQC3+MBN1Mb4gRQACg648AR9jq9d3YDE2AGiRvtgce
SF0An2GfDxACAG/UiFTa1XJKC8a/nzxj
=49Nc
-----END PGP SIGNATURE-----

--NvQORXwiARETsYmR--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120213152825.GH3283>