Messages in this thread | | | Date | Fri, 24 May 2002 20:58:11 +0200 | From | Andrea Arcangeli <> | Subject | Re: negative dentries wasting ram |
| |
On Fri, May 24, 2002 at 02:00:36PM -0400, Alexander Viro wrote: > > > On Fri, 24 May 2002, Andrea Arcangeli wrote: > > > so why don't you also left a negative directory floating around, so you > > know if you creat a file with such name you don't need to ->loopup the > > lowlevel fs but you only need to destroy the negative directory and all > > its leafs in-core-dcache? If you did the negative effect would become > > more obvious, the d_unhash hides it except for the spooling workloads. > > -ENOPARSE
instead of dropping the dentry for a directory after an rmdir you could left it there as a negative entry, it would avoid you to ->lookup if somebody creat() using the name of such ex-directory.
> > > of kmem_cache_reap, so we are as efficient as possible, but we don't > > risk throwing away very useful cache, for more dubious caching effects > > after an unlink/create-failure that currently have the side effect of > > throwing away tons of worthwhile positive pagecache (and even triggering > > swap false positives) in some workloads. > > I might buy that argument if we didn't also leave around _unreferenced_ > inodes for minutes in the icache. And _that_ is much stronger source of
I don't see it, at the last iput of an inode with i_nlink == 0 the inode is freed immediatly, not like the dcache that is left floating around as a negative one with no useful caching effects for most workloads.
> memory pressure, so if you want to balance the thing you need to start > there.
Andrea - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |