Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 Nov 2003 12:09:04 -0800 (PST)
From:      Don Lewis <truckman@FreeBSD.org>
To:        l.ertl@univie.ac.at
Cc:        current@FreeBSD.org
Subject:   Re: named pipes memory leak?
Message-ID:  <200311112009.hABK94eF070133@gw.catspoiler.org>
In-Reply-To: <200311111928.hABJRxeF070057@gw.catspoiler.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 11 Nov, Don Lewis wrote:
> On 11 Nov, Lukas Ertl wrote:

>> Sorry, I probably missed an important part: we're creating the FIFOs on
>> nullfs mounts - the test script works great on plain UFS mounts, but the
>> null layer seems to VREF the vnode once again, so v_usecount is 2, thus it
>> is missong the check in fifo_cleanup().
> 
> Grrr ...  At least I didn't break this, our fifo implementation would
> have always leaked when used this way.
> 
> Doing the cleanup in fifo_inactive() would have worked better in this
> case.  I think I figured out a way to make that work properly, but I
> really need to test it.
> 
> Is there any particular reason that you are nuking and re-creating the
> fifo?  If you don't delete the fifo, the same sockets will get used each
> time.

Now that I've had some time to think about it, if you reuse the same
fifo, you'll run into the same problem that caused me to abandon my
previous fifo_inactive() version of the cleanup code, which is stale
data being left in the fifo after both ends have been closed.  You may
be stuck with plan B below ...

> As a workaround could you create a little mdfs to hold the fifo?



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