Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Jan 2006 13:01:37 +1100
From:      Peter Jeremy <PeterJeremy@optushome.com.au>
To:        Daniel Eischen <deischen@freebsd.org>
Cc:        freebsd-current@freebsd.org
Subject:   Re: kernel thread as real threads..
Message-ID:  <20060124020137.GW25397@cirb503493.alcatel.com.au>
In-Reply-To: <Pine.GSO.4.43.0601232038010.17167-100000@sea.ntplx.net>
References:  <20060124012236.GU25397@cirb503493.alcatel.com.au> <Pine.GSO.4.43.0601232038010.17167-100000@sea.ntplx.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 2006-Jan-23 20:38:46 -0500, Daniel Eischen wrote:
>On Tue, 24 Jan 2006, Peter Jeremy wrote:
>
>> On Mon, 2006-Jan-23 19:59:02 -0500, Daniel Eischen wrote:
>> >POSIX specifies that only 1 thread (the forking thread) is present
>> >after a fork.
>>
>> Just to clarify, I presume you are talking about only one thread
>> existing in the child process and the parent's threads still exist as
>> they did before the fork().  If fork() arbitrarily killed all the
>> threads in the parent process, that would be a real PITA.
>
>Correct, I assumed we were talking about the child process.

My understanding of Robert's issue was the case where a parent has
multiple threads, one thread does a fork() whilst the remaining
threads are not blocked.  If the remaining threads are executing
whilst fork() is copying the process address space, then the child
will could inherit a confused (partially indeterminate) copy of the
parent's address space, depending on what the other threads have
been doing.

-- 
Peter Jeremy



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