mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [RFC] Splitting CacheFS into general manager and cache backend bits
       [not found] <24616.1096914276@redhat.com>
@ 2004-10-05 10:14 ` David Howells
  0 siblings, 0 replies; only message in thread
From: David Howells @ 2004-10-05 10:14 UTC (permalink / raw)
  To: Linux filesystem caching discussion list; +Cc: linux-kernel


I've whipped up a patch to split CacheFS into two:

 (1) FS-Cache

     This is a general cache manager that the interested netfs's talk to. It
     is supplied with a number of cache backends over which it distributes the
     operations from the netfs's.

 (2) CacheFS

     This is then made into a cache backend. The act of mounting a block
     device as cachefs causes the space contained therein to be made available
     through FS-Cache.

To give you a clearer idea of what I'm thinking, this diagram might help:

	+---------+
	|         |                        +-----------+
	|   NFS   |--+                     |           |
	|         |  |                 +-->|  CacheFS  |
	+---------+  |   +----------+  |   | /dev/hda5 |
	             |   |          |  |   +-----------+
	+---------+  +-->|          |  |
	|         |      |          |--+   +-------------+
	|   AFS   |----->| FS-Cache |      |             |
	|         |      |          |----->| Cache Files |
	+---------+  +-->|          |      | /var/cache  |
	             |   |          |--+   +-------------+
	+---------+  |   +----------+  |
	|         |  |                 |   +-------------+
	|  ISOFS  |--+                 |   |             |
	|         |                    +-->| ReiserCache |
	+---------+                        | /           |
	                                   +-------------+

So, for example, you might have a block device mounted with CacheFS as one of
your backends, the traditional bunch of cache files as another backend and
some sort of Reiser4 plug-in as a third backend.

A netfs only has to be modified to take account of FS-Cache. It then shouldn't
need to be modified further to support each different type of cache.

David

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2004-10-05 10:15 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <24616.1096914276@redhat.com>
2004-10-05 10:14 ` [RFC] Splitting CacheFS into general manager and cache backend bits David Howells

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome