Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 May 2001 22:00:05 -0700 (PDT)
From:      Matt Dillon <dillon@earth.backplane.com>
To:        David Malone <dwmalone@maths.tcd.ie>
Cc:        John Baldwin <jhb@FreeBSD.org>, hackers@FreeBSD.org, "Brian F. Feldman" <green@FreeBSD.org>
Subject:   Re: RE: vmspace leak (+ tentative fix)
Message-ID:  <200105220500.f4M505o12021@earth.backplane.com>
References:  <XFMail.010521122251.jhb@FreeBSD.org> <200105211935.f4LJZHx05386@earth.backplane.com> <20010521232704.A64450@walton.maths.tcd.ie>

next in thread | previous in thread | raw e-mail | index | archive | help

:
:On Mon, May 21, 2001 at 12:35:17PM -0700, Matt Dillon wrote:
:
:>     It's important to release resources as early as possible, so zombied
:>     processes don't run the machine out of memory if a parent forgets to
:>     reap its children.
:
:I've found one other reason for releasing resources early. For
:example the vrele of a zombie process' text vnode is done by the
:process which reaps that zombie. If you can make the vrele block
:then the parent will block.
:
:I've seen this happen with NFS bugs, where init has got stuck in
:a "vmopar" and ended up blocking forever. The machine runs out of
:processes relatively quickly once init can't clear up zombies. 
:
:I've been using the following patch at home, which moves the
:vrele from wait in the parent to exit in the child. I wonder
:if it is worth committing? (The clearing of p_textvp is to
:stop ps and friends tripping up over a half free vnode - I'm
:not sure if it is necessary).
:
:	David.

    That's a very good reason, and your patch looks fine.  Do you
    want me to do a quick double-check of it and commit it to
    -current (and -stable a few days later) ?  I think releasing the
    text vnode in the child is absolutely the best way to do it.

						-Matt

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




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