diff options
-rw-r--r-- | fs/btrfs/scrub.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/fs/btrfs/scrub.c b/fs/btrfs/scrub.c index 19a1eda70361..70427ef66b04 100644 --- a/fs/btrfs/scrub.c +++ b/fs/btrfs/scrub.c | |||
@@ -3682,6 +3682,11 @@ int scrub_enumerate_chunks(struct scrub_ctx *sctx, | |||
3682 | 3682 | ||
3683 | scrub_pause_off(fs_info); | 3683 | scrub_pause_off(fs_info); |
3684 | 3684 | ||
3685 | btrfs_dev_replace_lock(&fs_info->dev_replace, 1); | ||
3686 | dev_replace->cursor_left = dev_replace->cursor_right; | ||
3687 | dev_replace->item_needs_writeback = 1; | ||
3688 | btrfs_dev_replace_unlock(&fs_info->dev_replace, 1); | ||
3689 | |||
3685 | if (ro_set) | 3690 | if (ro_set) |
3686 | btrfs_dec_block_group_ro(root, cache); | 3691 | btrfs_dec_block_group_ro(root, cache); |
3687 | 3692 | ||
@@ -3719,11 +3724,6 @@ int scrub_enumerate_chunks(struct scrub_ctx *sctx, | |||
3719 | ret = -ENOMEM; | 3724 | ret = -ENOMEM; |
3720 | break; | 3725 | break; |
3721 | } | 3726 | } |
3722 | |||
3723 | btrfs_dev_replace_lock(&fs_info->dev_replace, 1); | ||
3724 | dev_replace->cursor_left = dev_replace->cursor_right; | ||
3725 | dev_replace->item_needs_writeback = 1; | ||
3726 | btrfs_dev_replace_unlock(&fs_info->dev_replace, 1); | ||
3727 | skip: | 3727 | skip: |
3728 | key.offset = found_key.offset + length; | 3728 | key.offset = found_key.offset + length; |
3729 | btrfs_release_path(path); | 3729 | btrfs_release_path(path); |