Date: Wed, 27 May 2009 20:05:12 +0100 From: David Malone <dwmalone@maths.tcd.ie> To: David G Lawrence <dg@dglawrence.com> Cc: Nick Barkas <snb@freebsd.org>, Roman Divacky <rdivacky@freebsd.org>, "freebsd-current@freebsd.org" <freebsd-current@freebsd.org> Subject: Re: vm_lowmem event handler for dirhash Message-ID: <20090527190512.GA17312@walton.maths.tcd.ie> In-Reply-To: <20090527114553.GB25063@tnn.dglawrence.com> References: <20090527103648.GA61454@ebi.local> <20090527111238.GA2000@freebsd.org> <20090527113351.GA61692@ebi.local> <20090527114553.GB25063@tnn.dglawrence.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, May 27, 2009 at 04:45:53AM -0700, David G Lawrence wrote: > I'm wondering if you have a low limit on how far you will reduce > the dirhash. In a system that is thrashing a bit (due to a large process, > for example), I can imagine multiple (10+) calls to the lowmem handler in > rapid succession that would completely deplete the dirhash. Seems like > this would result in even worse thrashing as more disk I/O occurs due > to lack of dirhash. The idea of resisting recycling recently used hashes is supposed to give us some protection against thrashing. We talked about the problem with Alan for a bit, and reached the conclusion that it was probably best to return some memory each time the lowmem handler was called. If this turns out to be a problem, I guess we could add a low water mark, where if dirhash holds less than that memory then it won't return the memory on a low memory event. (Note that under normal circumstances, there is some protection against thrashing because of the recycling schemem used.) David.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090527190512.GA17312>