btrfs: move btrfs_full_stripe_locks_tree into block-group.h
authorJosef Bacik <josef@toxicpanda.com>
Wed, 14 Sep 2022 23:04:38 +0000 (19:04 -0400)
committerDavid Sterba <dsterba@suse.com>
Mon, 26 Sep 2022 10:28:06 +0000 (12:28 +0200)
This is actually embedded in struct btrfs_block_group, so move this
definition to block-group.h, and then open-code the init of the tree
where we init the rest of the block group instead of using a helper.

Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: Anand Jain <anand.jain@oracle.com>
Signed-off-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/block-group.c
fs/btrfs/block-group.h
fs/btrfs/ctree.h

index e7b5a54..d83bafc 100644 (file)
@@ -1926,7 +1926,8 @@ static struct btrfs_block_group *btrfs_create_block_group_cache(
        btrfs_init_free_space_ctl(cache, cache->free_space_ctl);
        atomic_set(&cache->frozen, 0);
        mutex_init(&cache->free_space_lock);
-       btrfs_init_full_stripe_locks_tree(&cache->full_stripe_locks_root);
+       cache->full_stripe_locks_root.root = RB_ROOT;
+       mutex_init(&cache->full_stripe_locks_root.lock);
 
        return cache;
 }
index f21a34d..8fb14b9 100644 (file)
@@ -76,6 +76,14 @@ struct btrfs_caching_control {
 /* Once caching_thread() finds this much free space, it will wake up waiters. */
 #define CACHING_CTL_WAKE_UP SZ_2M
 
+/*
+ * Tree to record all locked full stripes of a RAID5/6 block group
+ */
+struct btrfs_full_stripe_locks_tree {
+       struct rb_root root;
+       struct mutex lock;
+};
+
 struct btrfs_block_group {
        struct btrfs_fs_info *fs_info;
        struct inode *inode;
index 70eb3ae..2ef8f70 100644 (file)
@@ -497,14 +497,6 @@ struct btrfs_free_cluster {
        struct list_head block_group_list;
 };
 
-/*
- * Tree to record all locked full stripes of a RAID5/6 block group
- */
-struct btrfs_full_stripe_locks_tree {
-       struct rb_root root;
-       struct mutex lock;
-};
-
 /* Discard control. */
 /*
  * Async discard uses multiple lists to differentiate the discard filter
@@ -4058,12 +4050,6 @@ int btrfs_scrub_cancel(struct btrfs_fs_info *info);
 int btrfs_scrub_cancel_dev(struct btrfs_device *dev);
 int btrfs_scrub_progress(struct btrfs_fs_info *fs_info, u64 devid,
                         struct btrfs_scrub_progress *progress);
-static inline void btrfs_init_full_stripe_locks_tree(
-                       struct btrfs_full_stripe_locks_tree *locks_root)
-{
-       locks_root->root = RB_ROOT;
-       mutex_init(&locks_root->lock);
-}
 
 /* dev-replace.c */
 void btrfs_bio_counter_inc_blocked(struct btrfs_fs_info *fs_info);