mirror of
https://github.com/torvalds/linux
synced 2024-07-21 10:41:44 +00:00
btrfs: replace btrfs_delayed_*_ref with btrfs_*_ref
Now that these two structs are the same, move the btrfs_data_ref and btrfs_tree_ref up and use these in the btrfs_delayed_ref_node. Then remove the btrfs_delayed_*_ref structs. Reviewed-by: Filipe Manana <fdmanana@suse.com> Signed-off-by: Josef Bacik <josef@toxicpanda.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
7f6af7c434
commit
99f2be1522
|
@ -982,12 +982,10 @@ static void init_delayed_ref_common(struct btrfs_fs_info *fs_info,
|
|||
RB_CLEAR_NODE(&ref->ref_node);
|
||||
INIT_LIST_HEAD(&ref->add_list);
|
||||
|
||||
if (generic_ref->type == BTRFS_REF_DATA) {
|
||||
ref->data_ref.objectid = generic_ref->data_ref.objectid;
|
||||
ref->data_ref.offset = generic_ref->data_ref.offset;
|
||||
} else {
|
||||
ref->tree_ref.level = generic_ref->tree_ref.level;
|
||||
}
|
||||
if (generic_ref->type == BTRFS_REF_DATA)
|
||||
ref->data_ref = generic_ref->data_ref;
|
||||
else
|
||||
ref->tree_ref = generic_ref->tree_ref;
|
||||
}
|
||||
|
||||
void btrfs_init_tree_ref(struct btrfs_ref *generic_ref, int level, u64 mod_root,
|
||||
|
|
|
@ -30,13 +30,30 @@ enum btrfs_delayed_ref_action {
|
|||
BTRFS_UPDATE_DELAYED_HEAD,
|
||||
} __packed;
|
||||
|
||||
struct btrfs_delayed_tree_ref {
|
||||
int level;
|
||||
struct btrfs_data_ref {
|
||||
/* For EXTENT_DATA_REF */
|
||||
|
||||
/* Inode which refers to this data extent */
|
||||
u64 objectid;
|
||||
|
||||
/*
|
||||
* file_offset - extent_offset
|
||||
*
|
||||
* file_offset is the key.offset of the EXTENT_DATA key.
|
||||
* extent_offset is btrfs_file_extent_offset() of the EXTENT_DATA data.
|
||||
*/
|
||||
u64 offset;
|
||||
};
|
||||
|
||||
struct btrfs_delayed_data_ref {
|
||||
u64 objectid;
|
||||
u64 offset;
|
||||
struct btrfs_tree_ref {
|
||||
/*
|
||||
* Level of this tree block.
|
||||
*
|
||||
* Shared for skinny (TREE_BLOCK_REF) and normal tree ref.
|
||||
*/
|
||||
int level;
|
||||
|
||||
/* For non-skinny metadata, no special member needed */
|
||||
};
|
||||
|
||||
struct btrfs_delayed_ref_node {
|
||||
|
@ -84,8 +101,8 @@ struct btrfs_delayed_ref_node {
|
|||
unsigned int type:8;
|
||||
|
||||
union {
|
||||
struct btrfs_delayed_tree_ref tree_ref;
|
||||
struct btrfs_delayed_data_ref data_ref;
|
||||
struct btrfs_tree_ref tree_ref;
|
||||
struct btrfs_data_ref data_ref;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -222,32 +239,6 @@ enum btrfs_ref_type {
|
|||
BTRFS_REF_LAST,
|
||||
} __packed;
|
||||
|
||||
struct btrfs_data_ref {
|
||||
/* For EXTENT_DATA_REF */
|
||||
|
||||
/* Inode which refers to this data extent */
|
||||
u64 objectid;
|
||||
|
||||
/*
|
||||
* file_offset - extent_offset
|
||||
*
|
||||
* file_offset is the key.offset of the EXTENT_DATA key.
|
||||
* extent_offset is btrfs_file_extent_offset() of the EXTENT_DATA data.
|
||||
*/
|
||||
u64 offset;
|
||||
};
|
||||
|
||||
struct btrfs_tree_ref {
|
||||
/*
|
||||
* Level of this tree block
|
||||
*
|
||||
* Shared for skinny (TREE_BLOCK_REF) and normal tree ref.
|
||||
*/
|
||||
int level;
|
||||
|
||||
/* For non-skinny metadata, no special member needed */
|
||||
};
|
||||
|
||||
struct btrfs_ref {
|
||||
enum btrfs_ref_type type;
|
||||
enum btrfs_delayed_ref_action action;
|
||||
|
|
Loading…
Reference in a new issue