Re: [PATCH 0/7] Per-bdi writeback flusher threads

From: Jens Axboe
Date: Wed Apr 08 2009 - 02:21:15 EST


On Wed, Apr 08 2009, Wu Fengguang wrote:
> [CC Jens]
>
> On Tue, Apr 07, 2009 at 10:03:38PM +0800, Jos Houtman wrote:
> >
> > I tried the write-back branch from the 2.6-block tree.
> >
> > And I can atleast confirm that it works, atleast in relation to the
> > writeback not keeping up when the device was congested before it wrote a
> > 1024 pages.
> >
> > See: http://lkml.org/lkml/2009/3/22/83 for a bit more information.
>
> Hi Jos, you said that this simple patch solved the problem, however you
> mentioned somehow suboptimal performance. Can you elaborate that? So
> that I can push or improve it.
>
> Thanks,
> Fengguang
> ---
> fs/fs-writeback.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> --- mm.orig/fs/fs-writeback.c
> +++ mm/fs/fs-writeback.c
> @@ -325,7 +325,8 @@ __sync_single_inode(struct inode *inode,
> * soon as the queue becomes uncongested.
> */
> inode->i_state |= I_DIRTY_PAGES;
> - if (wbc->nr_to_write <= 0) {
> + if (wbc->nr_to_write <= 0 ||
> + wbc->encountered_congestion) {
> /*
> * slice used up: queue for next turn
> */
>
> > But the second problem seen in that thread, a write-starve-read problem does
> > not seem to solved. In this problem the writes of the writeback algorithm
> > starve the ongoing reads, no matter what io-scheduler is picked.

What kind of SSD drive are you using? Does it support queuing or not?

--
Jens Axboe

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