Date: Tue, 30 Jan 2007 22:57:52 +0100 From: Divacky Roman <xdivac02@stud.fit.vutbr.cz> To: freebsd-emulation@freebsd.org Subject: [PATCH] linux 2.6.16 causes zombie processes with linux-opera Message-ID: <20070130215752.GA86572@stud.fit.vutbr.cz> In-Reply-To: <20070128233230.GA4347@mail.scottro.net> References: <20070128233230.GA4347@mail.scottro.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Jan 28, 2007 at 06:32:30PM -0500, Scott Robbins wrote: > As near as I can determine, this only happens if I set the sysctl > compat.linux.osrelease to 2.6.16. > > This is on a system running CURRENT > > (7.0-CURRENT FreeBSD 7.0-CURRENT #0: Thu Jan 25 20:30:57 EST 2007) > > When I close linux opera, a zombied process remains. The parent PID is > 1. > > Each time I open and then close opera, one and sometimes two, zombied > processes remain. > > Therefore, if I've been browsing the web on and off for awhile, and do a > pgrep opera, I might have a list of 20 or more PIDs, all zombies. please.. can you try this patch: --- /tmp/tmp.970.0 Tue Jan 30 22:56:18 2007 +++ /root/projects/linuxolator/src/sys/compat/linux/linux_emul.c Tue Jan 30 22:56:15 2007 @@ -165,6 +165,16 @@ KASSERT(em != NULL, ("proc_exit: emuldata not found.\n")); + /* reparent all non thread leaders to initproc */ + if (em->shared->group_pid != p->p_pid) { + sx_xlock(&proctree_lock); + wakeup(initproc); + PROC_LOCK(p); + proc_reparent(p, initproc); + PROC_UNLOCK(p); + sx_xunlock(&proctree_lock); + } + child_clear_tid = em->child_clear_tid; EMUL_UNLOCK(&emul_lock); ignore the LOR for now and tell me if there's any difference with the opera behaviour. I cant test now myself ;( roman
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070130215752.GA86572>