[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210114161929.GQ35215@casper.infradead.org>
Date: Thu, 14 Jan 2021 16:19:29 +0000
From: Matthew Wilcox <willy@...radead.org>
To: David Howells <dhowells@...hat.com>
Cc: linux-fsdevel@...r.kernel.org, linux-cachefs@...hat.com,
jlayton@...hat.com, dwysocha@...hat.com,
Dominique Martinet <asmadeus@...ewreck.org>,
Steve French <sfrench@...ba.org>,
Trond Myklebust <trond.myklebust@...merspace.com>,
Anna Schumaker <anna.schumaker@...app.com>,
Christoph Hellwig <hch@....de>, dchinner@...hat.com,
Linus Torvalds <torvalds@...ux-foundation.org>,
v9fs-developer@...ts.sourceforge.net,
linux-afs@...ts.infradead.org, ceph-devel@...r.kernel.org,
linux-cifs@...r.kernel.org, linux-nfs@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: Redesigning and modernising fscache
On Thu, Jan 14, 2021 at 10:45:06AM +0000, David Howells wrote:
> However, there've been some objections to the approach I've taken to
> implementing this. The way I've done it is to disable the use of fscache by
> the five network filesystems that use it, remove much of the old code, put in
> the reimplementation, then cut the filesystems over. I.e. rip-and-replace.
> It leaves unported filesystems unable to use it - but three of the five are
> done (afs, ceph, nfs), and I've supplied partially-done patches for the other
> two (9p, cifs).
>
> It's been suggested that it's too hard to review this way and that either I
> should go for a gradual phasing in or build the new one in parallel. The
> first is difficult because I want to change how almost everything in there
> works - but the parts are tied together; the second is difficult because there
> are areas that would *have* to overlap (the UAPI device file, the cache
> storage, the cache size limits and at least some state for managing these), so
> there would have to be interaction between the two variants. One refinement
> of the latter would be to make the two implementations mutually exclusive: you
> can build one or the other, but not both.
My reservation with "build fscache2" is that it's going to take some
time to do, and I really want rid of ->readpages as soon as possible.
What I'd like to see is netfs_readahead() existing as soon as possible,
built on top of the current core. Then filesystems can implement
netfs_read_request_ops one by one, and they become insulated from the
transition.
Powered by blists - more mailing lists