From: Nikolay Borisov <nborisov@suse.com>
To: linux-btrfs@vger.kernel.org
Cc: Nikolay Borisov <nborisov@suse.com>
Subject: [PATCH 0/6] Simplifications around submit_bio_hook
Date: Wed, 10 Apr 2019 17:24:37 +0300 [thread overview]
Message-ID: <20190410142443.6470-1-nborisov@suse.com> (raw)
I've been taking a look at the submit_bio_hook et al and I saw some
opportunities for improvement. First I begin by simplifying the definition of
submit_bio_hook callback and making one of its arguments explicit.
Patch 3 removes a redundant extent_io_tree argument that was passed through
several layers of functions and ultimately made it somewhat cumbersome to reason
what extent_io_tree is being used.
Patch 4 and 5 hardcode a 0 being passed for the bio_offset parameter to
btrfs_submit_bio_start/btree_submit_bio_start since it only matters for DIO.
Patch 6 finally does away with the bio_offset parameter of submit_bio_hook.
Here is the output of bloat-o-meter for posterity:
add/remove: 0/0 grow/shrink: 4/7 up/down: 48/-319 (-271)
Function old new delta
read_extent_buffer_pages 784 822 +38
btrfs_add_ordered_sum 100 104 +4
btrfs_submit_bio_hook 364 367 +3
btree_submit_bio_hook 175 178 +3
end_bio_extent_readpage 2119 2116 -3
btrfs_reloc_clone_csums 272 262 -10
btrfs_csum_one_bio 1358 1348 -10
btree_read_extent_buffer_pages 282 272 -10
readahead_tree_block 73 55 -18
reada_tree_block_flagged 194 165 -29
submit_one_bio 313 74 -239
Total: Before=1072719, After=1072448, chg -0.03%
Nikolay Borisov (6):
btrfs: Define submit_bio_hook's type directly
btrfs: Change submit_bio_hook to taking an inode directly
btrfs: Remove 'tree' argument from read_extent_buffer_pages
btrfs: Pass 0 for bio_offset to btrfs_wq_submit_bio
btrfs: Always pass 0 bio_offset for btree_submit_bio_start
btrfs: Remove bio_offset argument from submit_bio_hook
fs/btrfs/disk-io.c | 22 +++++++---------------
fs/btrfs/extent_io.c | 10 ++++------
fs/btrfs/extent_io.h | 9 +++------
fs/btrfs/inode.c | 11 +++++------
4 files changed, 19 insertions(+), 33 deletions(-)
--
2.17.1
next reply other threads:[~2019-04-10 14:24 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-10 14:24 Nikolay Borisov [this message]
2019-04-10 14:24 ` [PATCH 1/6] btrfs: Define submit_bio_hook's type directly Nikolay Borisov
2019-04-11 11:10 ` Johannes Thumshirn
2019-04-10 14:24 ` [PATCH 2/6] btrfs: Change submit_bio_hook to taking an inode directly Nikolay Borisov
2019-04-11 11:18 ` Johannes Thumshirn
2019-04-11 11:23 ` Nikolay Borisov
2019-04-10 14:24 ` [PATCH 3/6] btrfs: Remove 'tree' argument from read_extent_buffer_pages Nikolay Borisov
2019-04-11 13:01 ` Johannes Thumshirn
2019-04-10 14:24 ` [PATCH 4/6] btrfs: Pass 0 for bio_offset to btrfs_wq_submit_bio Nikolay Borisov
2019-04-11 13:09 ` Johannes Thumshirn
2019-04-11 13:10 ` Johannes Thumshirn
2019-04-11 13:17 ` Nikolay Borisov
2019-04-11 13:26 ` Johannes Thumshirn
2019-04-10 14:24 ` [PATCH 5/6] btrfs: Always pass 0 bio_offset for btree_submit_bio_start Nikolay Borisov
2019-04-11 13:27 ` Johannes Thumshirn
2019-04-10 14:24 ` [PATCH 6/6] btrfs: Remove bio_offset argument from submit_bio_hook Nikolay Borisov
2019-04-10 16:39 ` Nikolay Borisov
2019-04-10 16:46 ` [PATCH v2] " Nikolay Borisov
2019-04-11 13:29 ` Johannes Thumshirn
2019-04-11 14:39 ` Nikolay Borisov
2019-04-18 13:04 ` [PATCH 0/6] Simplifications around submit_bio_hook David Sterba
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190410142443.6470-1-nborisov@suse.com \
--to=nborisov@suse.com \
--cc=linux-btrfs@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).