[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <E1JF4Ey-0000x4-5p@localhost.localdomain>
Date: Wed, 16 Jan 2008 17:07:20 +0800
From: Fengguang Wu <wfg@...l.ustc.edu.cn>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: Michael Rubin <mrubin@...gle.com>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
linux-kernel@...r.kernel.org, linux-mm@...ck.org
Subject: Re: [patch] Converting writeback linked lists to a tree based data structure
On Tue, Jan 15, 2008 at 09:51:49PM -0800, Andrew Morton wrote:
> On Wed, 16 Jan 2008 12:55:07 +0800 Fengguang Wu <wfg@...l.ustc.edu.cn> wrote:
>
> > On Tue, Jan 15, 2008 at 08:42:36PM -0800, Andrew Morton wrote:
> > > On Wed, 16 Jan 2008 12:25:53 +0800 Fengguang Wu <wfg@...l.ustc.edu.cn> wrote:
> > >
> > > > list_heads are OK if we use them for one and only function.
> > >
> > > Not really. They're inappropriate when you wish to remember your
> > > position in the list while you dropped the lock (as we must do in
> > > writeback).
> > >
> > > A data structure which permits us to interate across the search key rather
> > > than across the actual storage locations is more appropriate.
> >
> > I totally agree with you. What I mean is to first do the split of
> > functions - into three: ordering, starvation prevention, and blockade
> > waiting.
>
> Does "ordering" here refer to ordering bt time-of-first-dirty?
Ordering by dirtied_when or i_ino, either is OK.
> What is "blockade waiting"?
Some inodes/pages cannot be synced now for some reason and should be
retried after a while.
> > Then to do better ordering by adopting radix tree(or rbtree
> > if radix tree is not enough),
>
> ordering of what?
Switch from time to location.
> > and lastly get rid of the list_heads to
> > avoid locking. Does it sound like a good path?
>
> I'd have thaought that replacing list_heads with another data structure
> would be a simgle commit.
That would be easy. s_more_io and s_more_io_wait can all be converted
to radix trees.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists