mbox series

[0/2] ceph: conversion to fscache API rewrite

Message ID 20211025132452.101591-1-jlayton@kernel.org (mailing list archive)
Headers show
Series ceph: conversion to fscache API rewrite | expand

Message

Jeff Layton Oct. 25, 2021, 1:24 p.m. UTC
Last week, David Howells posted a set of patches to modernize fscache
and cachefiles [1] (and in the process fix a ton of bugs). The patches
in this set convert ceph over to use the new API.

The first patch in this series switches ceph over to use the new API.
The second patch adds support for caching files that are open for write.

I've tested caching and non-caching setups with xfstests and it seems to
work well. The only remaining issue I see is that sometimes fsstress
will cause the cachefiles backend fs to fill up. When this happens, the
cache goes offline, but everything otherwise keeps working.

This is still an improvement over the existing code, however, and I
think that problem may be solveable by a more aggressive culling cycle.

[1]: https://lore.kernel.org/ceph-devel/CAHk-=wi7K64wo4PtROxq_cLhfq-c-3aCbW5CjRfnKYA439YFUw@mail.gmail.com/T/#t

Jeff Layton (2):
  ceph: conversion to new fscache API
  ceph: add fscache writeback support

 fs/ceph/Kconfig |   2 +-
 fs/ceph/addr.c  |  98 +++++++++++++++++++-----
 fs/ceph/cache.c | 196 +++++++++++++++++++++---------------------------
 fs/ceph/cache.h |  96 +++++++++++++++++-------
 fs/ceph/caps.c  |   3 +-
 fs/ceph/file.c  |  13 +++-
 fs/ceph/inode.c |  22 ++++--
 fs/ceph/super.c |  10 +--
 fs/ceph/super.h |   4 +-
 9 files changed, 263 insertions(+), 181 deletions(-)