summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorMiao Xie <miaox@cn.fujitsu.com>2013-12-26 13:07:02 +0800
committerChris Mason <clm@fb.com>2014-01-28 13:20:06 -0800
commit4dd466d36a50d9c96cd990e2e0d472fe720a10aa (patch)
treedcde21cfbc75e43c145b171a0f16355158b7d20f /fs
parent74c40f925e0d8e1ddfe5f9fc410b4c2f6c70acf5 (diff)
Btrfs: don't run delayed nodes again after all nodes flush
If the number of the delayed items is greater than the upper limit, we will try to flush all the delayed items. After that, it is unnecessary to run them again because they are being dealt with by the wokers or the number of them is less than the lower limit. Signed-off-by: Miao Xie <miaox@cn.fujitsu.com> Signed-off-by: Chris Mason <clm@fb.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/btrfs/delayed-inode.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/btrfs/delayed-inode.c b/fs/btrfs/delayed-inode.c
index 608efeb24aea..10d149c1fde1 100644
--- a/fs/btrfs/delayed-inode.c
+++ b/fs/btrfs/delayed-inode.c
@@ -1395,6 +1395,7 @@ void btrfs_balance_delayed_items(struct btrfs_root *root)
break;
}
finish_wait(&delayed_root->wait, &__wait);
+ return;
}
btrfs_wq_run_delayed_node(delayed_root, root, BTRFS_DELAYED_BATCH);