mirror of https://gitee.com/openkylin/linux.git
btrfs: factor btrfs_init_scrub() out of open_ctree()
Signed-off-by: Eric Sandeen <sandeen@redhat.com> [renamed to btrfs_init_scrub] Signed-off-by: David Sterba <dsterba@suse.cz>
This commit is contained in:
parent
0489234077
commit
638aa7ed46
|
@ -2147,6 +2147,17 @@ void btrfs_free_fs_roots(struct btrfs_fs_info *fs_info)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void btrfs_init_scrub(struct btrfs_fs_info *fs_info)
|
||||||
|
{
|
||||||
|
mutex_init(&fs_info->scrub_lock);
|
||||||
|
atomic_set(&fs_info->scrubs_running, 0);
|
||||||
|
atomic_set(&fs_info->scrub_pause_req, 0);
|
||||||
|
atomic_set(&fs_info->scrubs_paused, 0);
|
||||||
|
atomic_set(&fs_info->scrub_cancel_req, 0);
|
||||||
|
init_waitqueue_head(&fs_info->scrub_pause_wait);
|
||||||
|
fs_info->scrub_workers_refcnt = 0;
|
||||||
|
}
|
||||||
|
|
||||||
int open_ctree(struct super_block *sb,
|
int open_ctree(struct super_block *sb,
|
||||||
struct btrfs_fs_devices *fs_devices,
|
struct btrfs_fs_devices *fs_devices,
|
||||||
char *options)
|
char *options)
|
||||||
|
@ -2295,14 +2306,8 @@ int open_ctree(struct super_block *sb,
|
||||||
}
|
}
|
||||||
btrfs_init_delayed_root(fs_info->delayed_root);
|
btrfs_init_delayed_root(fs_info->delayed_root);
|
||||||
|
|
||||||
mutex_init(&fs_info->scrub_lock);
|
btrfs_init_scrub(fs_info);
|
||||||
atomic_set(&fs_info->scrubs_running, 0);
|
|
||||||
atomic_set(&fs_info->scrub_pause_req, 0);
|
|
||||||
atomic_set(&fs_info->scrubs_paused, 0);
|
|
||||||
atomic_set(&fs_info->scrub_cancel_req, 0);
|
|
||||||
init_waitqueue_head(&fs_info->replace_wait);
|
init_waitqueue_head(&fs_info->replace_wait);
|
||||||
init_waitqueue_head(&fs_info->scrub_pause_wait);
|
|
||||||
fs_info->scrub_workers_refcnt = 0;
|
|
||||||
#ifdef CONFIG_BTRFS_FS_CHECK_INTEGRITY
|
#ifdef CONFIG_BTRFS_FS_CHECK_INTEGRITY
|
||||||
fs_info->check_integrity_print_mask = 0;
|
fs_info->check_integrity_print_mask = 0;
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue