diff options
-rw-r--r-- | fs/btrfs/inode.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 280e4d487636..d1e3a2d15f91 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c | |||
@@ -7614,7 +7614,7 @@ int btrfs_start_delalloc_inodes(struct btrfs_root *root, int delay_iput) | |||
7614 | 7614 | ||
7615 | INIT_LIST_HEAD(&works); | 7615 | INIT_LIST_HEAD(&works); |
7616 | INIT_LIST_HEAD(&splice); | 7616 | INIT_LIST_HEAD(&splice); |
7617 | again: | 7617 | |
7618 | spin_lock(&root->fs_info->delalloc_lock); | 7618 | spin_lock(&root->fs_info->delalloc_lock); |
7619 | list_splice_init(&root->fs_info->delalloc_inodes, &splice); | 7619 | list_splice_init(&root->fs_info->delalloc_inodes, &splice); |
7620 | while (!list_empty(&splice)) { | 7620 | while (!list_empty(&splice)) { |
@@ -7650,13 +7650,6 @@ again: | |||
7650 | btrfs_wait_and_free_delalloc_work(work); | 7650 | btrfs_wait_and_free_delalloc_work(work); |
7651 | } | 7651 | } |
7652 | 7652 | ||
7653 | spin_lock(&root->fs_info->delalloc_lock); | ||
7654 | if (!list_empty(&root->fs_info->delalloc_inodes)) { | ||
7655 | spin_unlock(&root->fs_info->delalloc_lock); | ||
7656 | goto again; | ||
7657 | } | ||
7658 | spin_unlock(&root->fs_info->delalloc_lock); | ||
7659 | |||
7660 | /* the filemap_flush will queue IO into the worker threads, but | 7653 | /* the filemap_flush will queue IO into the worker threads, but |
7661 | * we have to make sure the IO is actually started and that | 7654 | * we have to make sure the IO is actually started and that |
7662 | * ordered extents get created before we return | 7655 | * ordered extents get created before we return |