aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/volumes.h
diff options
context:
space:
mode:
authorChris Mason <chris.mason@oracle.com>2008-05-07 11:43:44 -0400
committerChris Mason <chris.mason@oracle.com>2008-09-25 11:04:02 -0400
commita061fc8da7b990faa41ca503e66faef3ecdeead0 (patch)
tree0d3b5b6e4d2164d507d9a16d5b38d373592a5c8f /fs/btrfs/volumes.h
parent5d9cd9ecbf40b8bd5045a3c2f1feb35db6a12266 (diff)
Btrfs: Add support for online device removal
This required a few structural changes to the code that manages bdev pointers: The VFS super block now gets an anon-bdev instead of a pointer to the lowest bdev. This allows us to avoid swapping the super block bdev pointer around at run time. The code to read in the super block no longer goes through the extent buffer interface. Things got ugly keeping the mapping constant. Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/volumes.h')
-rw-r--r--fs/btrfs/volumes.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/btrfs/volumes.h b/fs/btrfs/volumes.h
index a9663e92bb14..0f94a69e6eb6 100644
--- a/fs/btrfs/volumes.h
+++ b/fs/btrfs/volumes.h
@@ -125,6 +125,7 @@ int btrfs_close_devices(struct btrfs_fs_devices *fs_devices);
125int btrfs_add_device(struct btrfs_trans_handle *trans, 125int btrfs_add_device(struct btrfs_trans_handle *trans,
126 struct btrfs_root *root, 126 struct btrfs_root *root,
127 struct btrfs_device *device); 127 struct btrfs_device *device);
128int btrfs_rm_device(struct btrfs_root *root, char *device_path);
128int btrfs_cleanup_fs_uuids(void); 129int btrfs_cleanup_fs_uuids(void);
129int btrfs_num_copies(struct btrfs_mapping_tree *map_tree, u64 logical, u64 len); 130int btrfs_num_copies(struct btrfs_mapping_tree *map_tree, u64 logical, u64 len);
130int btrfs_unplug_page(struct btrfs_mapping_tree *map_tree, 131int btrfs_unplug_page(struct btrfs_mapping_tree *map_tree,
@@ -136,4 +137,6 @@ struct btrfs_device *btrfs_find_device(struct btrfs_root *root, u64 devid,
136int btrfs_shrink_device(struct btrfs_device *device, u64 new_size); 137int btrfs_shrink_device(struct btrfs_device *device, u64 new_size);
137int btrfs_init_new_device(struct btrfs_root *root, char *path); 138int btrfs_init_new_device(struct btrfs_root *root, char *path);
138int btrfs_balance(struct btrfs_root *dev_root); 139int btrfs_balance(struct btrfs_root *dev_root);
140void btrfs_unlock_volumes(void);
141void btrfs_lock_volumes(void);
139#endif 142#endif