Re: [PATCH] Btrfs: improve the delayed inode throttling

2013-03-07 Thread Chris Mason
On Wed, Mar 06, 2013 at 10:53:22PM -0700, Miao Xie wrote: Onwed, 6 Mar 2013 22:06:50 -0500, Chris Mason wrote: On Wed, Mar 06, 2013 at 06:39:30PM -0700, Miao Xie wrote: On wed, 6 Mar 2013 09:53:28 -0500, Chris Mason wrote: [SNIP] + async_work-delayed_root = delayed_root; +

Re: [PATCH] Btrfs: improve the delayed inode throttling

2013-03-06 Thread Chris Mason
transation is committed This one I've left out for now, the old code didn't block and I'd prefer that we test that change independently. V2 below, it also has the break Liu Bo mentioned. From: Chris Mason chris.ma...@fusionio.com Date: Mon, 4 Mar 2013 17:13:31 -0500 Subject: [PATCH] Btrfs: improve

Re: [PATCH] Btrfs: improve the delayed inode throttling

2013-03-06 Thread Miao Xie
, 4 Mar 2013 17:13:31 -0500 Subject: [PATCH] Btrfs: improve the delayed inode throttling The delayed inode code batches up changes to the btree in hopes of doing them in bulk. As the changes build up, processes kick off worker threads and wait for them to make progress. The current code

Re: [PATCH] Btrfs: improve the delayed inode throttling

2013-03-06 Thread Miao Xie
On wed, 6 Mar 2013 09:53:28 -0500, Chris Mason wrote: [SNIP] static int btrfs_wq_run_delayed_node(struct btrfs_delayed_root *delayed_root, - struct btrfs_root *root, int all) + struct btrfs_root *root, int nr) { - struct

Re: [PATCH] Btrfs: improve the delayed inode throttling

2013-03-06 Thread Miao Xie
On wed, 6 Mar 2013 22:06:50 -0500, Chris Mason wrote: On Wed, Mar 06, 2013 at 06:39:30PM -0700, Miao Xie wrote: On wed, 6 Mar 2013 09:53:28 -0500, Chris Mason wrote: [SNIP] + async_work-delayed_root = delayed_root; + async_work-work.func = btrfs_async_run_delayed_root; +

[PATCH] Btrfs: improve the delayed inode throttling

2013-03-05 Thread Chris Mason
Hi everyone, While running fs_mark against raid5/6 I noticed the delayed inode insertions were creating a lot of latencies. Reading through things, I think we need to move to a model where we fire off fewer work items and have the ones we do fire last longer. With this commit our average file

Re: [PATCH] Btrfs: improve the delayed inode throttling

2013-03-05 Thread Liu Bo
On Tue, Mar 05, 2013 at 10:40:17AM -0500, Chris Mason wrote: Hi everyone, While running fs_mark against raid5/6 I noticed the delayed inode insertions were creating a lot of latencies. Reading through things, I think we need to move to a model where we fire off fewer work items and have

Re: [PATCH] Btrfs: improve the delayed inode throttling

2013-03-05 Thread Chris Mason
On Tue, Mar 05, 2013 at 05:37:34PM -0700, Liu Bo wrote: On Tue, Mar 05, 2013 at 10:40:17AM -0500, Chris Mason wrote: diff --git a/fs/btrfs/delayed-inode.c b/fs/btrfs/delayed-inode.c index 0b278b1..460d1a8 100644 --- a/fs/btrfs/delayed-inode.c +++ b/fs/btrfs/delayed-inode.c +

Re: [PATCH] Btrfs: improve the delayed inode throttling

2013-03-05 Thread Miao Xie
On tue, 5 Mar 2013 10:40:17 -0500, Chris Mason wrote: diff --git a/fs/btrfs/delayed-inode.c b/fs/btrfs/delayed-inode.c index 0b278b1..460d1a8 100644 --- a/fs/btrfs/delayed-inode.c +++ b/fs/btrfs/delayed-inode.c @@ -22,8 +22,8 @@ #include disk-io.h #include transaction.h -#define