Date: Sat, 26 Aug 2006 16:37:19 +0800 From: "Intron is my alias on the Internet" <mag@intron.ac> To: freebsd-emulation@freebsd.org, freebsd-current@freebsd.org Subject: Re: Linuxulator: Unbreak Mozilla, Firefox and RealPlayer Message-ID: <courier.44F0083F.0000DC13@intron.ac> In-Reply-To: <20060826080410.GA56721@stud.fit.vutbr.cz> References: <courier.44EE6A8A.00008655@intron.ac> <20060825084755.GA93151@stud.fit.vutbr.cz> <200608251028.55915.jhb@freebsd.org> <courier.44EFACD6.0000C97F@intron.ac> <20060826080410.GA56721@stud.fit.vutbr.cz>
next in thread | previous in thread | raw e-mail | index | archive | help
Divacky Roman wrote: > On Sat, Aug 26, 2006 at 10:07:17AM +0800, Intron is my alias on the Internet wrote: >> John Baldwin wrote: >> >> >On Friday 25 August 2006 04:47, Divacky Roman wrote: >> > >> >Umm, if you want to reparent a proc you should use the proc_reparent() >> >function instead of just hacking on p_pptr. You also need to hold >> >the proctree_lock when modifying p_pptr anyway. >> > >> >-- >> >John Baldwin >> >_______________________________________________ >> >freebsd-current@freebsd.org mailing list >> >http://lists.freebsd.org/mailman/listinfo/freebsd-current >> >To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org" >> >> Thank you for your reminder. I have updated my patch: >> >> http://ftp.intron.ac/tmp/linux_machdep.c.1.53-2.diff > > this is wrong > > 1) you dont PROC_LOCK(p2) > > 2) you have to lock proctree_lock instead of allproc_lock > > are you satisfied with this patch? > > www.stud.fit.vutbr.cz/~xdivac02/linux-fix.patch This problem has confused me for a long time. The lock allproc_lock is more conservative than either p2->p_mtx or proctree_lock. It is the real protector of process tree. Actually, p2 should be protected from its birth to leaving the function linux_clone(). You may commit your patch to test. ------------------------------------------------------------------------ From Beijing, China
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?courier.44F0083F.0000DC13>