diff --git a/btrfs-find-root.c b/btrfs-find-root.c index 408d471a..6fa61cc1 100644 --- a/btrfs-find-root.c +++ b/btrfs-find-root.c @@ -82,7 +82,7 @@ static struct btrfs_root *open_ctree_broken(int fd, const char *device) return NULL; } - ret = btrfs_scan_fs_devices(fd, device, &fs_devices, 0, 1, 1); + ret = btrfs_scan_fs_devices(fd, device, &fs_devices, 0, 1); if (ret) goto out; diff --git a/chunk-recover.c b/chunk-recover.c index 677b6c2b..6f43066f 100644 --- a/chunk-recover.c +++ b/chunk-recover.c @@ -1366,7 +1366,7 @@ static int recover_prepare(struct recover_control *rc, char *path) goto fail_free_sb; } - ret = btrfs_scan_fs_devices(fd, path, &fs_devices, 0, 1, 1); + ret = btrfs_scan_fs_devices(fd, path, &fs_devices, 0, 1); if (ret) goto fail_free_sb; diff --git a/disk-io.c b/disk-io.c index 0c4cb4a1..02b6d42d 100644 --- a/disk-io.c +++ b/disk-io.c @@ -995,7 +995,7 @@ void btrfs_cleanup_all_caches(struct btrfs_fs_info *fs_info) int btrfs_scan_fs_devices(int fd, const char *path, struct btrfs_fs_devices **fs_devices, - u64 sb_bytenr, int run_ioctl, int super_recover) + u64 sb_bytenr, int super_recover) { u64 total_devs; int ret; @@ -1010,7 +1010,7 @@ int btrfs_scan_fs_devices(int fd, const char *path, } if (total_devs != 1) { - ret = btrfs_scan_lblkid(run_ioctl); + ret = btrfs_scan_lblkid(!BTRFS_UPDATE_KERNEL); if (ret) return ret; } @@ -1091,7 +1091,6 @@ static struct btrfs_fs_info *__open_ctree_fd(int fp, const char *path, fs_info->on_restoring = 1; ret = btrfs_scan_fs_devices(fp, path, &fs_devices, sb_bytenr, - !(flags & OPEN_CTREE_RECOVER_SUPER), (flags & OPEN_CTREE_RECOVER_SUPER)); if (ret) goto out; diff --git a/disk-io.h b/disk-io.h index c2960558..48181094 100644 --- a/disk-io.h +++ b/disk-io.h @@ -68,7 +68,7 @@ void btrfs_release_all_roots(struct btrfs_fs_info *fs_info); void btrfs_cleanup_all_caches(struct btrfs_fs_info *fs_info); int btrfs_scan_fs_devices(int fd, const char *path, struct btrfs_fs_devices **fs_devices, u64 sb_bytenr, - int run_ioctl, int super_recover); + int super_recover); int btrfs_setup_chunk_tree_and_device_map(struct btrfs_fs_info *fs_info); struct btrfs_root *open_ctree(const char *filename, u64 sb_bytenr, diff --git a/super-recover.c b/super-recover.c index 419b86ae..adb2c442 100644 --- a/super-recover.c +++ b/super-recover.c @@ -282,7 +282,7 @@ int btrfs_recover_superblocks(const char *dname, } init_recover_superblock(&recover); - ret = btrfs_scan_fs_devices(fd, dname, &recover.fs_devices, 0, 0, 1); + ret = btrfs_scan_fs_devices(fd, dname, &recover.fs_devices, 0, 1); close(fd); if (ret) { ret = 1;