Date: Fri, 18 Aug 2006 18:47:12 +0100 (BST) From: Robert Watson <rwatson@FreeBSD.org> To: Alexander Leidinger <netchild@FreeBSD.org> Cc: cvs-src@FreeBSD.org, src-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/compat/linux linux_misc.c Message-ID: <20060818184107.B47942@fledge.watson.org> In-Reply-To: <200608172121.k7HLLUY5095480@repoman.freebsd.org> References: <200608172121.k7HLLUY5095480@repoman.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 17 Aug 2006, Alexander Leidinger wrote: > - protect td->td_proc->p_pid with the proc lock in linux_getpid > in the amd64 (= non i386) case [1] Is this necessary? In principle, td->td_proc is static for a live thread bound to a process (i.e., in a system call, which the current thread presumable is, as long as td == curthread), p_pid is static for a live process that isn't exiting (so in a system call is not generally exiting). The native FreeBSD getpid() only acquires the process lock when following p_pptr, since this can change during a system call (i.e., as a result of the parent dying, and the child being re-parented to init(8)). Robert N M Watson Computer Laboratory University of Cambridge
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060818184107.B47942>