Date: Fri, 23 Oct 2009 10:50:25 -0400 (EDT) From: Rick Macklem <rmacklem@uoguelph.ca> To: Bruce Evans <brde@optusnet.com.au> Cc: arch@FreeBSD.org, John Baldwin <jhb@FreeBSD.org> Subject: Re: Put a timeout on -ve name cache entries in NFS Message-ID: <Pine.GSO.4.63.0910231041580.14622@muncher.cs.uoguelph.ca> In-Reply-To: <20091024010347.D14674@delplex.bde.org> References: <200910191634.30040.jhb@freebsd.org> <20091022182943.P13634@delplex.bde.org> <Pine.GSO.4.63.0910221034520.1537@muncher.cs.uoguelph.ca> <20091024010347.D14674@delplex.bde.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 24 Oct 2009, Bruce Evans wrote: > On Thu, 22 Oct 2009, Rick Macklem wrote: > >> On Thu, 22 Oct 2009, Bruce Evans wrote: >>> One reason that I never committed my port of NetBSD's implementation of >>> negative cache entries for nfs is that I thought the timeout should be >>> a mount option but I didn't want to deal with the portability problems >>> from that. >>> >> Just to clarify. Are you saying that, given no other system has such >> a mount option, you think the sysctl variable is an ok solution or >> that you think it should be a mount option and not a sysctl variable? > > No; I think it should be a mount option. > Ok, so then what were your concerns w.r.t "portability problems"? (It's not that much work to make it a mount option and since it looks like the patch will be delayed until after 8.0 releases, I/or John can make it a mount option but I didn't understand what you meant by "portability options".) [good stuff w.r.t. which is harder, deleted for brevity] > > My version actually just uses a hackish sysctl vfs.nfs.negcache (default: > enabled) to enable the negative name cache. I don't have any timeout > control for it. > Yea, I saw it mainly as a way to disable -ve caching too. It just happened that the sysctl variable could specify the timeout as well as disable it (if set == 0). When it comes to a mount option, an enable/disable flag is probably easier, but then there might be a debate along the lines of "An option shouldn't be enabled by default...", so I'm temped to stick with a setable timeout. Basically the current code has an "infinite" timeout and no way of disabling it, so it seemed to me that some sort of optional timeout/disable would be useful, so I suggested that to John. If no-one else weighs in on the other side, I head in the "mount option" direction, rick
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.63.0910231041580.14622>