mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-04 09:59:32 +00:00
Btrfs: noinline the cluster searching functions
When profiling the find cluster code it's hard to tell where we are spending our time because the bitmap and non-bitmap functions get inlined by the compiler, so make that not happen. Thanks, Signed-off-by: Josef Bacik <josef@redhat.com>
This commit is contained in:
parent
86d4a77ba3
commit
3de85bb95c
1 changed files with 10 additions and 8 deletions
|
@ -2142,10 +2142,11 @@ static int btrfs_bitmap_cluster(struct btrfs_block_group_cache *block_group,
|
|||
/*
|
||||
* This searches the block group for just extents to fill the cluster with.
|
||||
*/
|
||||
static int setup_cluster_no_bitmap(struct btrfs_block_group_cache *block_group,
|
||||
static noinline int
|
||||
setup_cluster_no_bitmap(struct btrfs_block_group_cache *block_group,
|
||||
struct btrfs_free_cluster *cluster,
|
||||
struct list_head *bitmaps,
|
||||
u64 offset, u64 bytes, u64 min_bytes)
|
||||
struct list_head *bitmaps, u64 offset, u64 bytes,
|
||||
u64 min_bytes)
|
||||
{
|
||||
struct btrfs_free_space_ctl *ctl = block_group->free_space_ctl;
|
||||
struct btrfs_free_space *first = NULL;
|
||||
|
@ -2245,10 +2246,11 @@ static int setup_cluster_no_bitmap(struct btrfs_block_group_cache *block_group,
|
|||
* This specifically looks for bitmaps that may work in the cluster, we assume
|
||||
* that we have already failed to find extents that will work.
|
||||
*/
|
||||
static int setup_cluster_bitmap(struct btrfs_block_group_cache *block_group,
|
||||
static noinline int
|
||||
setup_cluster_bitmap(struct btrfs_block_group_cache *block_group,
|
||||
struct btrfs_free_cluster *cluster,
|
||||
struct list_head *bitmaps,
|
||||
u64 offset, u64 bytes, u64 min_bytes)
|
||||
struct list_head *bitmaps, u64 offset, u64 bytes,
|
||||
u64 min_bytes)
|
||||
{
|
||||
struct btrfs_free_space_ctl *ctl = block_group->free_space_ctl;
|
||||
struct btrfs_free_space *entry;
|
||||
|
|
Loading…
Reference in a new issue