@@ -2583,6 +2583,25 @@ static int btrfs_finish_sprout(struct btrfs_trans_handle *trans)
return ret;
}
+static inline bool btrfs_check_device_zone_type(const struct btrfs_fs_info *fs_info,
+ struct block_device *bdev)
+{
+ if (btrfs_is_zoned(fs_info)) {
+ /*
+ * We can allow a regular device on a zoned filesystem, because
+ * we will emulate the zoned capabilities.
+ */
+ if (!bdev_is_zoned(bdev))
+ return true;
+
+ return fs_info->zone_size ==
+ (bdev_zone_sectors(bdev) << SECTOR_SHIFT);
+ }
+
+ /* Do not allow Host Manged zoned device */
+ return bdev_zoned_model(bdev) != BLK_ZONED_HM;
+}
+
struct block_device *btrfs_open_device_for_adding(struct btrfs_fs_info *fs_info,
const char *device_path)
{
@@ -311,25 +311,6 @@ static inline void btrfs_dev_clear_zone_empty(struct btrfs_device *device, u64 p
btrfs_dev_set_empty_zone_bit(device, pos, false);
}
-static inline bool btrfs_check_device_zone_type(const struct btrfs_fs_info *fs_info,
- struct block_device *bdev)
-{
- if (btrfs_is_zoned(fs_info)) {
- /*
- * We can allow a regular device on a zoned filesystem, because
- * we will emulate the zoned capabilities.
- */
- if (!bdev_is_zoned(bdev))
- return true;
-
- return fs_info->zone_size ==
- (bdev_zone_sectors(bdev) << SECTOR_SHIFT);
- }
-
- /* Do not allow Host Manged zoned device */
- return bdev_zoned_model(bdev) != BLK_ZONED_HM;
-}
-
static inline bool btrfs_check_super_location(struct btrfs_device *device, u64 pos)
{
/*
Now that this is only used in volumes.c move it out of zoned.h locally to volumes.c. This is in order to avoid having a helper that uses functions not defined in zoned.h. Signed-off-by: Josef Bacik <josef@toxicpanda.com> --- fs/btrfs/volumes.c | 19 +++++++++++++++++++ fs/btrfs/zoned.h | 19 ------------------- 2 files changed, 19 insertions(+), 19 deletions(-)