btrfs: embed data_ref and tree_ref in btrfs_delayed_ref_node
authorJosef Bacik <josef@toxicpanda.com>
Fri, 12 Apr 2024 21:16:40 +0000 (17:16 -0400)
committerDavid Sterba <dsterba@suse.com>
Tue, 7 May 2024 19:31:04 +0000 (21:31 +0200)
commitd3fbb00f5e21c6dfaa6e820a21df0c9a3455a028
tree553731f24970610a3f170c4ee6637c7ddea59ed3
parent0eea355fc0f48916f29d1f066d06df49f075a593
btrfs: embed data_ref and tree_ref in btrfs_delayed_ref_node

We have been embedding btrfs_delayed_ref_node in the
btrfs_delayed_data_ref and btrfs_delayed_tree_ref, and then we have two
sets of cachep's and a variety of handling that is awkward because of
this separation.

Instead union these two members inside of btrfs_delayed_ref_node and
make that the first class object.  This allows us to go down to one
cachep for our delayed ref nodes instead of two.

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>
fs/btrfs/delayed-ref.c
fs/btrfs/delayed-ref.h