summaryrefslogtreecommitdiff
path: root/fs/btrfs/super.c
diff options
context:
space:
mode:
authorJosef Bacik <josef@toxicpanda.com>2022-09-09 17:53:18 -0400
committerDavid Sterba <dsterba@suse.com>2022-09-26 12:28:02 +0200
commita62a3bd9546b91a46bbb74f4b4a49815b64875b1 (patch)
tree8d45705feb579493ce86b1e386e88e3690b6ef88 /fs/btrfs/super.c
parentcdca85b092fbf4ce6f209b174ac3e7ef2b80bebf (diff)
btrfs: separate out the extent state and extent buffer init code
In order to help separate the extent buffer from the extent io tree code we need to break up the init functions. Signed-off-by: Josef Bacik <josef@toxicpanda.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/super.c')
-rw-r--r--fs/btrfs/super.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
index eb0ae7e396ef..be7df8d1d5b8 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
@@ -2736,13 +2736,17 @@ static int __init init_btrfs_fs(void)
if (err)
goto free_compress;
- err = extent_io_init();
+ err = extent_state_init_cachep();
if (err)
goto free_cachep;
+ err = extent_buffer_init_cachep();
+ if (err)
+ goto free_extent_cachep;
+
err = btrfs_bioset_init();
if (err)
- goto free_extent_io;
+ goto free_eb_cachep;
err = extent_map_init();
if (err)
@@ -2800,8 +2804,10 @@ free_extent_map:
extent_map_exit();
free_bioset:
btrfs_bioset_exit();
-free_extent_io:
- extent_io_exit();
+free_eb_cachep:
+ extent_buffer_free_cachep();
+free_extent_cachep:
+ extent_state_free_cachep();
free_cachep:
btrfs_destroy_cachep();
free_compress:
@@ -2821,7 +2827,8 @@ static void __exit exit_btrfs_fs(void)
ordered_data_exit();
extent_map_exit();
btrfs_bioset_exit();
- extent_io_exit();
+ extent_state_free_cachep();
+ extent_buffer_free_cachep();
btrfs_interface_exit();
unregister_filesystem(&btrfs_fs_type);
btrfs_exit_sysfs();