Re: RFT: updatedb "morning after" problem [was: Re: -mm merge plansfor 2.6.23]

From: Andrew Morton
Date: Fri Jul 27 2007 - 05:04:09 EST


On Fri, 27 Jul 2007 09:54:41 +0100 Al Viro <viro@xxxxxxxxxxxxxxxx> wrote:

> On Fri, Jul 27, 2007 at 01:47:49AM -0700, Andrew Morton wrote:
> > What I think is killing us here is the blockdev pagecache: the pagecache
> > which backs those directory entries and inodes. These pages get read
> > multiple times because they hold multiple directory entries and multiple
> > inodes. These multiple touches will put those pages onto the active list
> > so they stick around for a long time and everything else gets evicted.
>
> I wonder what happens if you try that on ext2. There we'd get directory
> contents in per-directory page cache, so the picture might change...

afacit ext2 just forgets to run mark_page_accessed for directory pages
altogether, so it'll be equivalent to ext3 with that one-liner, I expect.

The directory pagecache on ext2 might get reclaimed faster because those
pages are eligible for reclaiming via the reclaim of their inodes, whereas
ext3's directories are in blockdev pagecache, for which the reclaim-via-inode
mechanism cannot happen.

I should do some testing with mmapped files.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/