diff options
author | Nikolay Borisov <nborisov@suse.com> | 2019-03-12 16:20:29 +0100 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2019-05-02 13:48:19 +0200 |
commit | 4336650aff746e23d387227db826b39f00a3f3c3 (patch) | |
tree | 0f993b49f8ac5c3ec486ec6577948c9c363c221f /fs/btrfs | |
parent | btrfs: Replace clear_extent_bit with unlock_extent (diff) | |
download | linux-4336650aff746e23d387227db826b39f00a3f3c3.tar.xz linux-4336650aff746e23d387227db826b39f00a3f3c3.zip |
btrfs: Set io_tree only once in submit_compressed_extents
The inode never changes so it's sufficient to dereference it and get
the iotree only once, before the execution of the main loop. No
functional changes, only the size of the function is decreased:
add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-44 (-44)
Function old new delta
submit_compressed_extents 1240 1196 -44
Total: Before=88476, After=88432, chg -0.05%
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
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')
-rw-r--r-- | fs/btrfs/inode.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 05362559645e..83bf10bb13bb 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -717,7 +717,7 @@ static noinline void submit_compressed_extents(struct async_chunk *async_chunk) struct btrfs_key ins; struct extent_map *em; struct btrfs_root *root = BTRFS_I(inode)->root; - struct extent_io_tree *io_tree; + struct extent_io_tree *io_tree = &BTRFS_I(inode)->io_tree; int ret = 0; again: @@ -725,9 +725,6 @@ again: async_extent = list_entry(async_chunk->extents.next, struct async_extent, list); list_del(&async_extent->list); - - io_tree = &BTRFS_I(inode)->io_tree; - retry: /* did the compression code fall back to uncompressed IO? */ if (!async_extent->pages) { |