Re: [PATCH][RFC] evict streaming IO cache first

From: Rik van Riel
Date: Tue Jul 15 2008 - 17:53:49 EST


On Tue, 15 Jul 2008 13:48:48 -0700
Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Tue, 15 Jul 2008 16:09:48 -0400
> Rik van Riel <riel@xxxxxxxxxx> wrote:
>
> > This patch still needs some testing under various workloads
> > on different hardware - the approach should work but the
> > threshold may need tweaking.
>
> More than "some"!

Agreed. In my initial testing this patch seems to bring the
behaviour of the kernel closer to the behaviour the old VM
had, but it certainly needs lots and lots of testing!

> > When there is a lot of streaming IO going on, we do not want
> > to scan or evict pages from the working set. The old VM used
> > to skip any mapped page, but still evict indirect blocks and
> > other data that is useful to cache.
>
> I'd be surprised if indirect blocks are getting kicked - they tend to
> be awfully sticky due to frequent touch_buffer()s or equivalent.

If you rewrite a large enough file, they get kicked. This
has become noticable some time between 2.6.9 and 2.6.18, but
I don't think we can point to any particular changeset that
caused it - and even if we do, chances are it does more good
than harm :)

--
All Rights Reversed
--
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/