From: Ritesh Harjani <riteshh@linux.ibm.com>
To: tytso@mit.edu, jack@suse.cz, linux-ext4@vger.kernel.org
Cc: linux-fsdevel@vger.kernel.org, mbobrowski@mbobrowski.org,
riteshh@linux.ibm.com
Subject: [RFC 0/5] Ext4: Add support for blocksize < pagesize for dioread_nolock
Date: Wed, 16 Oct 2019 13:07:06 +0530 [thread overview]
Message-ID: <20191016073711.4141-1-riteshh@linux.ibm.com> (raw)
This patch series adds the support for blocksize < pagesize for
dioread_nolock feature.
Since in case of blocksize < pagesize, we can have multiple
small buffers of page as unwritten extents, we need to
maintain a vector of these unwritten extents which needs
the conversion after the IO is complete. Thus, we maintain
a list of tuple <offset, size> pair (io_end_vec) for this &
traverse this list to do the unwritten to written conversion.
Appreciate any reviews/comments on this patches.
Tests completed
===============
All (which also passes in default config) "quick" group xfstests
are passing. Tested xfstests with below configurations.
dioread_nolock with blocksize < pagesize
dioread_nolock with blocksize == pagesize
without dioread_nolock with blocksize < pagesize
without dioread_nolock with blocksize == pagesize
ltp/fsx test with multiple iterations of 1 million ops
did not show any error.
About patches
=============
Patch 1 - 3: These are some cleanup and refactoring patches.
Patch 4: This patch adds the required support.
Patch 5: This patch removes the checks which was not allowing to mount
with dioread_nolock when blocksize != pagesize was true.
_Patches can be cleanly applied on today's linus tree master branch_
Ritesh Harjani (5):
ext4: keep uniform naming convention for io & io_end variables
ext4: Add API to bring in support for unwritten io_end_vec conversion
ext4: Refactor mpage_map_and_submit_buffers function
ext4: Add support for blocksize < pagesize in dioread_nolock
ext4: Enable blocksize < pagesize for dioread_nolock
fs/ext4/ext4.h | 13 ++++-
fs/ext4/extents.c | 49 ++++++++++++-----
fs/ext4/inode.c | 136 ++++++++++++++++++++++++++++++----------------
fs/ext4/page-io.c | 110 ++++++++++++++++++++++++-------------
fs/ext4/super.c | 10 ----
5 files changed, 208 insertions(+), 110 deletions(-)
--
2.21.0
next reply other threads:[~2019-10-16 7:37 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-16 7:37 Ritesh Harjani [this message]
2019-10-16 7:37 ` [RFC 1/5] ext4: keep uniform naming convention for io & io_end variables Ritesh Harjani
2019-10-25 13:07 ` Jan Kara
2019-10-16 7:37 ` [RFC 2/5] ext4: Add API to bring in support for unwritten io_end_vec conversion Ritesh Harjani
2019-10-16 7:37 ` [RFC 3/5] ext4: Refactor mpage_map_and_submit_buffers function Ritesh Harjani
2019-10-16 7:37 ` [RFC 4/5] ext4: Add support for blocksize < pagesize in dioread_nolock Ritesh Harjani
2019-10-16 7:37 ` [RFC 5/5] ext4: Enable blocksize < pagesize for dioread_nolock Ritesh Harjani
2019-10-23 23:26 ` [RFC 0/5] Ext4: Add support for " Theodore Y. Ts'o
2019-10-24 1:12 ` Ritesh Harjani
2019-10-29 7:19 ` Ritesh Harjani
2019-11-03 19:16 ` Theodore Y. Ts'o
2019-11-04 10:16 ` Matthew Bobrowski
2019-11-04 10:37 ` Ritesh Harjani
2019-11-04 10:49 ` Matthew Bobrowski
2019-11-04 16:08 ` Theodore Y. Ts'o
2019-11-04 10:43 ` Ritesh Harjani
2019-11-04 11:59 ` Ritesh Harjani
2019-11-06 17:23 ` Jan Kara
2019-11-07 11:15 ` Ritesh Harjani
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=20191016073711.4141-1-riteshh@linux.ibm.com \
--to=riteshh@linux.ibm.com \
--cc=jack@suse.cz \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=mbobrowski@mbobrowski.org \
--cc=tytso@mit.edu \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.