summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/scrub.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/btrfs/scrub.c')
-rw-r--r--fs/btrfs/scrub.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/fs/btrfs/scrub.c b/fs/btrfs/scrub.c
index 3f664e692831..edad1a40f797 100644
--- a/fs/btrfs/scrub.c
+++ b/fs/btrfs/scrub.c
@@ -578,12 +578,11 @@ static void scrub_put_ctx(struct scrub_ctx *sctx)
578 scrub_free_ctx(sctx); 578 scrub_free_ctx(sctx);
579} 579}
580 580
581static noinline_for_stack 581static noinline_for_stack struct scrub_ctx *scrub_setup_ctx(
582struct scrub_ctx *scrub_setup_ctx(struct btrfs_device *dev, int is_dev_replace) 582 struct btrfs_fs_info *fs_info, int is_dev_replace)
583{ 583{
584 struct scrub_ctx *sctx; 584 struct scrub_ctx *sctx;
585 int i; 585 int i;
586 struct btrfs_fs_info *fs_info = dev->fs_info;
587 586
588 sctx = kzalloc(sizeof(*sctx), GFP_KERNEL); 587 sctx = kzalloc(sizeof(*sctx), GFP_KERNEL);
589 if (!sctx) 588 if (!sctx)
@@ -592,7 +591,7 @@ struct scrub_ctx *scrub_setup_ctx(struct btrfs_device *dev, int is_dev_replace)
592 sctx->is_dev_replace = is_dev_replace; 591 sctx->is_dev_replace = is_dev_replace;
593 sctx->pages_per_rd_bio = SCRUB_PAGES_PER_RD_BIO; 592 sctx->pages_per_rd_bio = SCRUB_PAGES_PER_RD_BIO;
594 sctx->curr = -1; 593 sctx->curr = -1;
595 sctx->fs_info = dev->fs_info; 594 sctx->fs_info = fs_info;
596 for (i = 0; i < SCRUB_BIOS_PER_SCTX; ++i) { 595 for (i = 0; i < SCRUB_BIOS_PER_SCTX; ++i) {
597 struct scrub_bio *sbio; 596 struct scrub_bio *sbio;
598 597
@@ -3879,7 +3878,7 @@ int btrfs_scrub_dev(struct btrfs_fs_info *fs_info, u64 devid, u64 start,
3879 return ret; 3878 return ret;
3880 } 3879 }
3881 3880
3882 sctx = scrub_setup_ctx(dev, is_dev_replace); 3881 sctx = scrub_setup_ctx(fs_info, is_dev_replace);
3883 if (IS_ERR(sctx)) { 3882 if (IS_ERR(sctx)) {
3884 mutex_unlock(&fs_info->scrub_lock); 3883 mutex_unlock(&fs_info->scrub_lock);
3885 mutex_unlock(&fs_info->fs_devices->device_list_mutex); 3884 mutex_unlock(&fs_info->fs_devices->device_list_mutex);