diff options
author | Nikolay Borisov <nborisov@suse.com> | 2018-08-15 18:26:57 +0300 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2018-12-17 14:51:31 +0100 |
commit | 9cfc8ba712be5abd476532bf672389f67e41f4ff (patch) | |
tree | abc79e3d7a138b427970356cc3d3f2d408ac500e /fs/btrfs/tests/btrfs-tests.c | |
parent | df44971468c1a960cac1ace116e4fa9be50a9479 (diff) |
btrfs: Remove special handling of EXTENT_BUFFER_UNMAPPED while freeing
Now that the whole of btrfs code has been audited for eb reference count
management it's time to remove the hunk in free_extent_buffer that
essentially considered the condition
"eb->ref == 2 && EXTENT_BUFFER_DUMMY"
to equal "eb->ref = 1". Also remove the last location
which takes an extra reference count in alloc_test_extent_buffer.
Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/tests/btrfs-tests.c')
-rw-r--r-- | fs/btrfs/tests/btrfs-tests.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/btrfs/tests/btrfs-tests.c b/fs/btrfs/tests/btrfs-tests.c index db72b3b6209e..4cb8fcfd3ec4 100644 --- a/fs/btrfs/tests/btrfs-tests.c +++ b/fs/btrfs/tests/btrfs-tests.c @@ -174,8 +174,12 @@ void btrfs_free_dummy_root(struct btrfs_root *root) /* Will be freed by btrfs_free_fs_roots */ if (WARN_ON(test_bit(BTRFS_ROOT_IN_RADIX, &root->state))) return; - if (root->node) + if (root->node) { + /* One for allocate_extent_buffer */ free_extent_buffer(root->node); + /* One for get_exent_buffer */ + free_extent_buffer(root->node); + } kfree(root); } |