From: Jeff Layton <jlayton@kernel.org>
To: ceph-devel@vger.kernel.org, idryomov@gmail.com
Subject: [PATCH 0/3] ceph: support for sparse read in msgr2 crc path
Date: Wed, 9 Mar 2022 07:33:20 -0500 [thread overview]
Message-ID: <20220309123323.20593-1-jlayton@kernel.org> (raw)
This patchset is a revised version of the one I sent a couple of weeks
ago. This adds support for sparse reads to libceph, and changes cephfs
over to use instead of non-sparse reads. The sparse read codepath is a
drop in replacement for regular reads, so the upper layers should be
able to use it interchangeibly.
This is necessary for the (ongoing) fscrypt work. We need to know which
regions in a file are actually sparse so that we can avoid decrypting
them.
The next step is to add the same support to the msgr2 secure codepath.
Currently that code sets up a scatterlist with the final destination
data pages in it and passes that to the decrypt routine so that the
decrypted data is written directly to the destination.
My thinking here is to change that to decrypt the data in-place for
sparse reads, and then we'll just parse the decrypted buffer via
calling sparse_read and copy the data into the right places.
Ilya, does that sound sane? Is it OK to pass gcm_crypt two different
scatterlists with a region that overlaps?
Jeff Layton (3):
libceph: add sparse read support to msgr2 crc state machine
libceph: add sparse read support to OSD client
ceph: convert to sparse reads
fs/ceph/addr.c | 2 +-
fs/ceph/file.c | 4 +-
include/linux/ceph/messenger.h | 31 +++++
include/linux/ceph/osd_client.h | 38 ++++++
net/ceph/messenger.c | 1 +
net/ceph/messenger_v2.c | 215 ++++++++++++++++++++++++++++++--
net/ceph/osd_client.c | 163 ++++++++++++++++++++++--
7 files changed, 435 insertions(+), 19 deletions(-)
--
2.35.1
next reply other threads:[~2022-03-09 12:33 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-09 12:33 Jeff Layton [this message]
2022-03-09 12:33 ` [PATCH 1/3] libceph: add sparse read support to msgr2 crc state machine Jeff Layton
2022-03-09 13:37 ` Jeff Layton
2022-03-09 12:33 ` [PATCH 2/3] libceph: add sparse read support to OSD client Jeff Layton
2022-03-11 17:08 ` Jeff Layton
2022-03-09 12:33 ` [PATCH 3/3] ceph: convert to sparse reads Jeff Layton
2022-03-14 2:22 ` Xiubo Li
2022-03-14 12:09 ` Jeff Layton
2022-03-15 6:23 ` [PATCH 0/3] ceph: support for sparse read in msgr2 crc path Xiubo Li
2022-03-15 10:12 ` Jeff Layton
2022-03-15 11:03 ` Xiubo Li
2022-03-15 11:10 ` Jeff Layton
2022-03-15 11:12 ` Xiubo Li
2022-03-15 13:33 ` Jeff Layton
2022-03-16 9:53 ` Xiubo Li
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=20220309123323.20593-1-jlayton@kernel.org \
--to=jlayton@kernel.org \
--cc=ceph-devel@vger.kernel.org \
--cc=idryomov@gmail.com \
/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.