summaryrefslogtreecommitdiff
path: root/disk-io.h
diff options
context:
space:
mode:
authorJosef Bacik <jbacik@fb.com>2015-02-03 09:48:57 -0500
committerJosef Bacik <jbacik@fb.com>2015-02-09 14:53:15 -0500
commit34a5ec12eedbd13f47c92108e4fb27e08598219a (patch)
treec11c54bc5f5fc737e50d8ed0a98c5175079f88a9 /disk-io.h
parentc6b388ef2d2bf0f7ff8d87fe82cdeddb6427eb67 (diff)
Btrfs-progs: skip opening all devices with restore
When we go to fixup the dev items after a restore we scan all existing devices. If you happen to be a btrfs developer you could possibly open up some random device that you didn't just restore onto, which gives you weird errors and makes you super cranky and waste a day trying to figure out what is failing. This will make it so that we use the fd we've already opened for opening our ctree. Thanks, Signed-off-by: Josef Bacik <jbacik@fb.com>
Diffstat (limited to 'disk-io.h')
-rw-r--r--disk-io.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/disk-io.h b/disk-io.h
index f963a96a..53df8f06 100644
--- a/disk-io.h
+++ b/disk-io.h
@@ -33,6 +33,7 @@ enum btrfs_open_ctree_flags {
OPEN_CTREE_RESTORE = (1 << 4),
OPEN_CTREE_NO_BLOCK_GROUPS = (1 << 5),
OPEN_CTREE_EXCLUSIVE = (1 << 6),
+ OPEN_CTREE_NO_DEVICES = (1 << 7),
};
static inline u64 btrfs_sb_offset(int mirror)
@@ -68,7 +69,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 super_recover);
+ int super_recover, int skip_devices);
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,