Loading fs/btrfs/dev-replace.c +5 −1 Original line number Original line Diff line number Diff line Loading @@ -465,7 +465,11 @@ static int btrfs_dev_replace_finishing(struct btrfs_fs_info *fs_info, * flush all outstanding I/O and inode extent mappings before the * flush all outstanding I/O and inode extent mappings before the * copy operation is declared as being finished * copy operation is declared as being finished */ */ btrfs_start_delalloc_inodes(root, 0); ret = btrfs_start_delalloc_inodes(root, 0); if (ret) { mutex_unlock(&dev_replace->lock_finishing_cancel_unmount); return ret; } btrfs_wait_ordered_extents(root, 0); btrfs_wait_ordered_extents(root, 0); trans = btrfs_start_transaction(root, 0); trans = btrfs_start_transaction(root, 0); Loading fs/btrfs/transaction.c +3 −1 Original line number Original line Diff line number Diff line Loading @@ -1427,7 +1427,9 @@ static int btrfs_flush_all_pending_stuffs(struct btrfs_trans_handle *trans, } } if (flush_on_commit || snap_pending) { if (flush_on_commit || snap_pending) { btrfs_start_delalloc_inodes(root, 1); ret = btrfs_start_delalloc_inodes(root, 1); if (ret) return ret; btrfs_wait_ordered_extents(root, 1); btrfs_wait_ordered_extents(root, 1); } } Loading Loading
fs/btrfs/dev-replace.c +5 −1 Original line number Original line Diff line number Diff line Loading @@ -465,7 +465,11 @@ static int btrfs_dev_replace_finishing(struct btrfs_fs_info *fs_info, * flush all outstanding I/O and inode extent mappings before the * flush all outstanding I/O and inode extent mappings before the * copy operation is declared as being finished * copy operation is declared as being finished */ */ btrfs_start_delalloc_inodes(root, 0); ret = btrfs_start_delalloc_inodes(root, 0); if (ret) { mutex_unlock(&dev_replace->lock_finishing_cancel_unmount); return ret; } btrfs_wait_ordered_extents(root, 0); btrfs_wait_ordered_extents(root, 0); trans = btrfs_start_transaction(root, 0); trans = btrfs_start_transaction(root, 0); Loading
fs/btrfs/transaction.c +3 −1 Original line number Original line Diff line number Diff line Loading @@ -1427,7 +1427,9 @@ static int btrfs_flush_all_pending_stuffs(struct btrfs_trans_handle *trans, } } if (flush_on_commit || snap_pending) { if (flush_on_commit || snap_pending) { btrfs_start_delalloc_inodes(root, 1); ret = btrfs_start_delalloc_inodes(root, 1); if (ret) return ret; btrfs_wait_ordered_extents(root, 1); btrfs_wait_ordered_extents(root, 1); } } Loading