OSDN Git Service

btrfs: get fs_info from trans in init_first_rw_device
authorDavid Sterba <dsterba@suse.com>
Wed, 20 Mar 2019 15:29:13 +0000 (16:29 +0100)
committerDavid Sterba <dsterba@suse.com>
Mon, 29 Apr 2019 17:02:42 +0000 (19:02 +0200)
We can read fs_info from the transaction and can drop it from the
parameters.

Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/volumes.c

index 0a81627..46b331c 100644 (file)
@@ -185,8 +185,7 @@ void btrfs_describe_block_groups(u64 bg_flags, char *buf, u32 size_buf)
 out_overflow:;
 }
 
-static int init_first_rw_device(struct btrfs_trans_handle *trans,
-                               struct btrfs_fs_info *fs_info);
+static int init_first_rw_device(struct btrfs_trans_handle *trans);
 static int btrfs_relocate_sys_chunks(struct btrfs_fs_info *fs_info);
 static void __btrfs_reset_dev_stats(struct btrfs_device *dev);
 static void btrfs_dev_stat_print_on_error(struct btrfs_device *dev);
@@ -2668,7 +2667,7 @@ int btrfs_init_new_device(struct btrfs_fs_info *fs_info, const char *device_path
 
        if (seeding_dev) {
                mutex_lock(&fs_info->chunk_mutex);
-               ret = init_first_rw_device(trans, fs_info);
+               ret = init_first_rw_device(trans);
                mutex_unlock(&fs_info->chunk_mutex);
                if (ret) {
                        btrfs_abort_transaction(trans, ret);
@@ -5304,9 +5303,9 @@ int btrfs_alloc_chunk(struct btrfs_trans_handle *trans, u64 type)
        return __btrfs_alloc_chunk(trans, chunk_offset, type);
 }
 
-static noinline int init_first_rw_device(struct btrfs_trans_handle *trans,
-                                        struct btrfs_fs_info *fs_info)
+static noinline int init_first_rw_device(struct btrfs_trans_handle *trans)
 {
+       struct btrfs_fs_info *fs_info = trans->fs_info;
        u64 chunk_offset;
        u64 sys_chunk_offset;
        u64 alloc_profile;