Skip site navigation (1)Skip section navigation (2)
Date:      28 Sep 1999 12:06:18 +0300
From:      Ville-Pertti Keinonen <will@iki.fi>
To:        Kenneth Culver <culverk@culverk.student.umd.edu>
Cc:        current@freebsd.org
Subject:   Re: just found this
Message-ID:  <867llb1k39.fsf@not.demophon.com>
In-Reply-To: Kenneth Culver's message of "28 Sep 1999 06:54:04 %2B0300"
References:  <Pine.BSF.4.10.9909272351370.327-100000@culverk.student.umd.edu.newsgate.clinet.fi>

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

Kenneth Culver <culverk@culverk.student.umd.edu> writes:

> I ran this on a machine running FreeBSD 3.2-RELEASE with 256MB of RAM,
> and it chugged along to about `02/03000' (meaning it created 3 files
> and about 63000 or so links), consuming a whopping 34MB of wired
> kernel memory (according to `top'), before all file system activity
> came to a screeching halt and the machine was unusable.

Looking at the code, it would seem that the number of directories is
what's causing problems (one is created for each link).  The directory
vnodes can't be thrown out because a name cache entry exists in each
one.  All of the name cache entries point to the same vnode, which
can't be thrown out because it is open.

So the main problem here is that one open vnode can be used to lock in
an arbitrary number of vnodes.

This should actually be fixed by something I did as part of some
patches I played with earlier this year, avoiding the need to force
parent directories of vnodes to be kept in memory.  I'll try to come
up with a version that works against -current and doesn't contain of
the other (experimental) features of the earlier patches.  IIRC the
part required to allow parent vnodes to be reused is quite simple.


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




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