]> www.infradead.org Git - users/jedix/linux-maple.git/commit
btrfs: reduce size and overhead of extent_map_block_end()
authorFilipe Manana <fdmanana@suse.com>
Tue, 23 Jul 2024 14:21:22 +0000 (15:21 +0100)
committerDavid Sterba <dsterba@suse.com>
Tue, 10 Sep 2024 14:51:12 +0000 (16:51 +0200)
commitab094670fab468aef551aafc197cdf4cf1a2e611
tree320898f0839ba8183d14c6a1b50a62b6d915067e
parent7fa5230b46f2c333f090716c52e99a0fbbee5fbd
btrfs: reduce size and overhead of extent_map_block_end()

At extent_map_block_end() we are calling the inline functions
extent_map_block_start() and extent_map_block_len() multiple times, which
results in expanding their code multiple times, increasing the compiled
code size and repeating the computations those functions do.

Improve this by caching their results in local variables.

The size of the module before this change:

   $ size fs/btrfs/btrfs.ko
      text    data     bss     dec     hex filename
   1755770  163800   16920 1936490  1d8c6a fs/btrfs/btrfs.ko

And after this change:

   $ size fs/btrfs/btrfs.ko
      text    data     bss     dec     hex filename
   1755656  163800   16920 1936376  1d8bf8 fs/btrfs/btrfs.ko

Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/extent_map.c