[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1958026.1639747261@warthog.procyon.org.uk>
Date: Fri, 17 Dec 2021 13:21:01 +0000
From: David Howells <dhowells@...hat.com>
To: David Wysochanski <dwysocha@...hat.com>
Cc: dhowells@...hat.com, linux-cachefs <linux-cachefs@...hat.com>,
Trond Myklebust <trond.myklebust@...merspace.com>,
Anna Schumaker <anna.schumaker@...app.com>,
linux-nfs <linux-nfs@...r.kernel.org>,
Trond Myklebust <trondmy@...merspace.com>,
Jeff Layton <jlayton@...nel.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v3 63/68] nfs: Convert to new fscache volume/cookie API
David Wysochanski <dwysocha@...hat.com> wrote:
> >
> > (4) fscache_enable/disable_cookie() have been removed.
> >
> > Call fscache_use_cookie() and fscache_unuse_cookie() when a file is
> > opened or closed to prevent a cache file from being culled and to keep
> > resources to hand that are needed to do I/O.
> >
> > Unuse the cookie when a file is opened for writing. This is gated by
> > the NFS_INO_FSCACHE flag on the nfs_inode.
> >
> > A better way might be to invalidate it with FSCACHE_INVAL_DIO_WRITE
> > which will keep it unused until all open files are closed.
> >
>
> Comment still out of date here, reference
> https://marc.info/?l=linux-nfs&m=163922984027745&w=4
Okay, how about:
(4) fscache_enable/disable_cookie() have been removed.
Call fscache_use_cookie() and fscache_unuse_cookie() when a file is
opened or closed to prevent a cache file from being culled and to keep
resources to hand that are needed to do I/O.
If a file is opened for writing, we invalidate it with
FSCACHE_INVAL_DIO_WRITE in lieu of doing writeback to the cache,
thereby making it cease caching until all currently open files are
closed. This should give the same behaviour as the uptream code.
Making the cache store local modifications isn't straightforward for
NFS, so that's left for future patches.
David
Powered by blists - more mailing lists