Re: [reiserfs-dev] Re: Ext2 directory index: ALS paper and benchmarks

Daniel Phillips (phillips@bonn-fries.net)
Fri, 7 Dec 2001 20:46:01 +0100


On December 7, 2001 07:32 pm, Andrew Morton wrote:
> Daniel Phillips wrote:
> >
> > Because Ext2 packs multiple entries onto a single inode table block, the
> > major effect is not due to lack of readahead but to partially processed
> > inode table blocks being evicted.
>
> Inode and directory lookups are satisfied direct from the icache/dcache,
> and the underlying fs is not informed of a lookup, which confuses the VM.
>
> Possibly, implementing a d_revalidate() method which touches the
> underlying block/page when a lookup occurs would help.

Very interesting point, the same thing happens with file index blocks vs page
cache accesses. You're suggesting we need some kind of mechanism for
propagating hits on cache items, either back to the underlying data or the
information used to regenerate the cache items.

On the other hand, having the underlying itable blocks get evicted can be
looked at as a feature, not a bug - it reduces double storage, allowing more
total items in cache.

There's also a subtle mechanism at work here - if any of the icache items on
an itable block gets evicted, then recreated before the itable block is
evicted, we *will* get an access hit on the itable block and grandma won't
have to sell the farm (I made that last part up).

--
Daniel

- 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/