Commit a722c72b authored by David Sterba's avatar David Sterba
Browse files

btrfs: open code __free_extent_buffer()



Using the kmem cache freeing directly is clear enough, we don't need to
wrap it.  All the users are in the same file.

Reviewed-by: default avatarJohannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: default avatarAnand Jain <anand.jain@oracle.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent b6160bae
Loading
Loading
Loading
Loading
+4 −9
Original line number Diff line number Diff line
@@ -2482,11 +2482,6 @@ bool try_release_extent_mapping(struct folio *folio, gfp_t mask)
	return try_release_extent_state(io_tree, folio);
}

static void __free_extent_buffer(struct extent_buffer *eb)
{
	kmem_cache_free(extent_buffer_cache, eb);
}

static int extent_buffer_under_io(const struct extent_buffer *eb)
{
	return (test_bit(EXTENT_BUFFER_WRITEBACK, &eb->bflags) ||
@@ -2592,7 +2587,7 @@ static inline void btrfs_release_extent_buffer(struct extent_buffer *eb)
{
	btrfs_release_extent_buffer_pages(eb);
	btrfs_leak_debug_del_eb(eb);
	__free_extent_buffer(eb);
	kmem_cache_free(extent_buffer_cache, eb);
}

static struct extent_buffer *
@@ -2690,7 +2685,7 @@ struct extent_buffer *__alloc_dummy_extent_buffer(struct btrfs_fs_info *fs_info,
			folio_put(eb->folios[i]);
		}
	}
	__free_extent_buffer(eb);
	kmem_cache_free(extent_buffer_cache, eb);
	return NULL;
}

@@ -3182,7 +3177,7 @@ static inline void btrfs_release_extent_buffer_rcu(struct rcu_head *head)
	struct extent_buffer *eb =
			container_of(head, struct extent_buffer, rcu_head);

	__free_extent_buffer(eb);
	kmem_cache_free(extent_buffer_cache, eb);
}

static int release_extent_buffer(struct extent_buffer *eb)
@@ -3210,7 +3205,7 @@ static int release_extent_buffer(struct extent_buffer *eb)
		btrfs_release_extent_buffer_pages(eb);
#ifdef CONFIG_BTRFS_FS_RUN_SANITY_TESTS
		if (unlikely(test_bit(EXTENT_BUFFER_UNMAPPED, &eb->bflags))) {
			__free_extent_buffer(eb);
			kmem_cache_free(extent_buffer_cache, eb);
			return 1;
		}
#endif