Re: [PATCH] Improve buffered streaming write ordering

From: Chris Mason
Date: Thu Oct 02 2008 - 12:13:29 EST


On Thu, 2008-10-02 at 08:20 -0400, Chris Mason wrote:
> On Wed, 2008-10-01 at 21:52 -0700, Andrew Morton wrote:
> > On Wed, 01 Oct 2008 14:40:51 -0400 Chris Mason <chris.mason@xxxxxxxxxx> wrote:
> >
> > > The patch below changes write_cache_pages to only use writeback_index
> > > when current_is_pdflush(). The basic idea is that pdflush is the only
> > > one who has concurrency control against the bdi, so it is the only one
> > > who can safely use and update writeback_index.
> >
> > Another approach would be to only update mapping->writeback_index if
> > nobody else altered it meanwhile.
> >
>
> Ok, I can give that a short.
>

I tried a few variations on letting anyone update writeback_index if it
hadn't changed, including always letting pdflush update it, and only
letting non-pdflush update it when walking forward in the file.

They all performed badly for both xfs and ext4, making me think the real
benefit from my patch comes with making non-pdflush writers start at 0.

So I'm a bit conflicted on this one. The filesystems could be doing
better, but the current logic in write_cache_pages isn't very
predictable.

-chris


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