]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
btrfs: factor out init_space_info() from create_space_info()
authorNaohiro Aota <naohiro.aota@wdc.com>
Wed, 23 Apr 2025 02:43:43 +0000 (11:43 +0900)
committerDavid Sterba <dsterba@suse.com>
Thu, 15 May 2025 12:30:53 +0000 (14:30 +0200)
Factor out initialization of the space_info struct, which is used in a
later patch. There is no functional change.

Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/space-info.c

index 3bb7246f40fa9915f326b170f01ea49de832472b..7334ffa67a86d7d558ea352e94a91bb643f49bc5 100644 (file)
@@ -234,19 +234,11 @@ void btrfs_update_space_info_chunk_size(struct btrfs_space_info *space_info,
        WRITE_ONCE(space_info->chunk_size, chunk_size);
 }
 
-static int create_space_info(struct btrfs_fs_info *info, u64 flags)
+static void init_space_info(struct btrfs_fs_info *info,
+                           struct btrfs_space_info *space_info, u64 flags)
 {
-
-       struct btrfs_space_info *space_info;
-       int i;
-       int ret;
-
-       space_info = kzalloc(sizeof(*space_info), GFP_NOFS);
-       if (!space_info)
-               return -ENOMEM;
-
        space_info->fs_info = info;
-       for (i = 0; i < BTRFS_NR_RAID_TYPES; i++)
+       for (int i = 0; i < BTRFS_NR_RAID_TYPES; i++)
                INIT_LIST_HEAD(&space_info->block_groups[i]);
        init_rwsem(&space_info->groups_sem);
        spin_lock_init(&space_info->lock);
@@ -260,6 +252,19 @@ static int create_space_info(struct btrfs_fs_info *info, u64 flags)
 
        if (btrfs_is_zoned(info))
                space_info->bg_reclaim_threshold = BTRFS_DEFAULT_ZONED_RECLAIM_THRESH;
+}
+
+static int create_space_info(struct btrfs_fs_info *info, u64 flags)
+{
+
+       struct btrfs_space_info *space_info;
+       int ret;
+
+       space_info = kzalloc(sizeof(*space_info), GFP_NOFS);
+       if (!space_info)
+               return -ENOMEM;
+
+       init_space_info(info, space_info, flags);
 
        ret = btrfs_sysfs_add_space_info_type(info, space_info);
        if (ret)