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;
 }
 
 /* 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;
 
        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
 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);