Coda File System

Re: [ [PATCH] CacheFS - general filesystem cache]

From: Troy Benjegerdes <>
Date: Tue, 31 Aug 2004 15:48:12 -0500
On Tue, Aug 31, 2004 at 04:00:21PM -0400, Jan Harkes wrote:
> On Tue, Aug 31, 2004 at 02:02:40PM -0500, Troy Benjegerdes wrote:
> > I noticed this on linux-kernel, and it looks very interesting... what
> > does anyone think of the idea of trying to use cacheFS for the coda
> > cache backing store? 
> I am not sure about persistency across reboots. Also it assumes that the
> cache is completely managed by some an in-kernel filesystem. So we would
> need a lot of hooks and changes before venus can put anything in there.
> It also makes its own decisions on when to purge objects from the cache,
> probably not such a big problem. I don't know how it deals with writes,
> it could very well be write-through only and assumes that anything in
> the cache can be thrown out at any time without losing data.

Cachefs is persistent across reboots. As for the other questions, I'm
guessing dhowells has a better answer than I.
> It was probably designed for an NFS-like client that is completely in
> the kernel and caches on a page granularity. The last time I checked
> David Howells' AFS client was an NFS client that happened to use
> AFS-compatible rpc calls to talk to the server. But that was a while ago
> so I'm not sure if it has changed much since then.
> In any case, I believe even if it is useful, we will still need our own
> cache for the metadata and directories and probably for local mutations
> that are waiting to be reintegrated. But on the other hand, it could rid
> venus from the day-to-day cache-management details and let venus focus
> on a smaller variable size cache that only deals with metadata and a
> CML. And yes, without restructuring the linux and other platforms would
> diverge considerable and make it a big pain to maintain.

I suppose the question is would it be worth the pain to maintain if it
allowed coda to do partial file caching (or at least allow a reader to
start reading a file while it's still being fetched), without
introducing all that complexity into venus. My initial reaction is the
existing cachefs support for files with holes could be used with a
couple of hooks to request more of the file from venus.
Received on 2004-08-31 16:49:32