mbox series

[0/6] ceph: convert to new netfs read helpers

Message ID 20210126134103.240031-1-jlayton@kernel.org
Headers show
Series ceph: convert to new netfs read helpers | expand

Message

Jeff Layton Jan. 26, 2021, 1:40 p.m. UTC
This patchset converts ceph to use the new netfs readpage, write_begin,
and readahead helpers to handle buffered reads. This is a substantial
reduction in code in ceph, but shouldn't really affect functionality in
any way.

Ilya, if you don't have any objections, I'll plan to let David pull this
series into his tree to be merged with the netfs API patches themselves.
I don't see any conflicts with what's currently in the testing or master
branches. Alternately, we could pull his patches into the ceph master
branch and then put these on top. Let me know what you'd prefer.

Thanks,
Jeff

Jeff Layton (6):
  ceph: disable old fscache readpage handling
  ceph: rework PageFsCache handling
  ceph: fix fscache invalidation
  ceph: convert readpage to fscache read helper
  ceph: plug write_begin into read helper
  ceph: convert ceph_readpages to ceph_readahead

 fs/ceph/Kconfig |   1 +
 fs/ceph/addr.c  | 535 +++++++++++++++++++-----------------------------
 fs/ceph/cache.c | 123 -----------
 fs/ceph/cache.h | 101 +++------
 fs/ceph/caps.c  |  10 +-
 fs/ceph/inode.c |   1 +
 6 files changed, 236 insertions(+), 535 deletions(-)

Comments

Jeff Layton Jan. 28, 2021, 12:52 p.m. UTC | #1
On Wed, 2021-01-27 at 23:50 +0100, Ilya Dryomov wrote:
> On Tue, Jan 26, 2021 at 2:41 PM Jeff Layton <jlayton@kernel.org> wrote:

> > 

> > This patchset converts ceph to use the new netfs readpage, write_begin,

> > and readahead helpers to handle buffered reads. This is a substantial

> > reduction in code in ceph, but shouldn't really affect functionality in

> > any way.

> > 

> > Ilya, if you don't have any objections, I'll plan to let David pull this

> > series into his tree to be merged with the netfs API patches themselves.

> 

> Sure, that works for me.

> 

> I would have expected that the new netfs infrastructure is pushed

> to a public branch that individual filesystems could peruse, but since

> David's set already includes patches for AFS and NFS, let's tag along.

> 

> Thanks,

> 

>                 Ilya


David has a fscache-netfs-lib branch that has all of the infrastructure
changes. See:

    https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/log/?h=fscache-netfs-lib

-- 
Jeff Layton <jlayton@kernel.org>
Ilya Dryomov Jan. 28, 2021, 8:48 p.m. UTC | #2
On Thu, Jan 28, 2021 at 1:52 PM Jeff Layton <jlayton@kernel.org> wrote:
>

> On Wed, 2021-01-27 at 23:50 +0100, Ilya Dryomov wrote:

> > On Tue, Jan 26, 2021 at 2:41 PM Jeff Layton <jlayton@kernel.org> wrote:

> > >

> > > This patchset converts ceph to use the new netfs readpage, write_begin,

> > > and readahead helpers to handle buffered reads. This is a substantial

> > > reduction in code in ceph, but shouldn't really affect functionality in

> > > any way.

> > >

> > > Ilya, if you don't have any objections, I'll plan to let David pull this

> > > series into his tree to be merged with the netfs API patches themselves.

> >

> > Sure, that works for me.

> >

> > I would have expected that the new netfs infrastructure is pushed

> > to a public branch that individual filesystems could peruse, but since

> > David's set already includes patches for AFS and NFS, let's tag along.

> >

> > Thanks,

> >

> >                 Ilya

>

> David has a fscache-netfs-lib branch that has all of the infrastructure

> changes. See:

>

>     https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/log/?h=fscache-netfs-lib


I saw that, but AFAICS it hasn't been declared public (as in suitable
for other people to base their work on, with the promise that history
won't get rewritten.  It is branched off of what looks like a random
snapshot of Linus' tree instead of a release point, etc.

Thanks,

                Ilya
David Howells Feb. 1, 2021, 3:25 p.m. UTC | #3
Ilya Dryomov <idryomov@gmail.com> wrote:

> > David has a fscache-netfs-lib branch that has all of the infrastructure

> > changes. See:

> >

> >     https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/log/?h=fscache-netfs-lib

> 

> I saw that, but AFAICS it hasn't been declared public (as in suitable

> for other people to base their work on, with the promise that history

> won't get rewritten.


My intention to avoid modifying it further, except for extra fix patches
stacked on the end if necessary, as I want to try to avoid jinxing it from
getting pulled in the next merge window.

> It is branched off of what looks like a random snapshot of Linus' tree

> instead of a release point, etc.


Yeah, sorry about that.  I took what was current linus/master at the time I
cut the branch with the intention of trying to get it into linux-next before
-rc5 was tagged (ie. >3 weeks before the merge window), but including the
X.509 crash fix.

David