ceph: conversion to new fscache API
authorJeff Layton <jlayton@kernel.org>
Tue, 7 Dec 2021 13:44:50 +0000 (08:44 -0500)
committerDavid Howells <dhowells@redhat.com>
Tue, 11 Jan 2022 22:13:01 +0000 (22:13 +0000)
commit400e1286c0ec3fd13d7ac0705c3c175bcb6d2899
tree6cf81c3a9c5b912444d790d78769c7ecde1eb45d
parent16f2f4e679cfdaa9552574484f104014908a76c6
ceph: conversion to new fscache API

Now that the fscache API has been reworked and simplified, change ceph
over to use it.

With the old API, we would only instantiate a cookie when the file was
open for reads. Change it to instantiate the cookie when the inode is
instantiated and call use/unuse when the file is opened/closed.

Also, ensure we resize the cached data on truncates, and invalidate the
cache in response to the appropriate events. This will allow us to
plumb in write support later.

Signed-off-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: David Howells <dhowells@redhat.com>
Link: https://lore.kernel.org/r/20211129162907.149445-2-jlayton@kernel.org/
Link: https://lore.kernel.org/r/20211207134451.66296-2-jlayton@kernel.org/
Link: https://lore.kernel.org/r/163906984277.143852.14697110691303589000.stgit@warthog.procyon.org.uk/
Link: https://lore.kernel.org/r/163967188351.1823006.5065634844099079351.stgit@warthog.procyon.org.uk/
Link: https://lore.kernel.org/r/164021581427.640689.14128682147127509264.stgit@warthog.procyon.org.uk/
fs/ceph/Kconfig
fs/ceph/addr.c
fs/ceph/cache.c
fs/ceph/cache.h
fs/ceph/caps.c
fs/ceph/file.c
fs/ceph/inode.c
fs/ceph/super.c
fs/ceph/super.h