Linuxulator: Unbreak Mozilla, Firefox and RealPlayer
Intron is my alias on the Internet
mag at intron.ac
Sat Aug 26 08:37:21 UTC 2006
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 at freebsd.org mailing list
>> >http://lists.freebsd.org/mailman/listinfo/freebsd-current
>> >To unsubscribe, send any mail to "freebsd-current-unsubscribe at 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
More information about the freebsd-emulation
mailing list