Re: Suggestion: a garbage-collected file system

From: Mikulas Patocka (mikulas@artax.karlin.mff.cuni.cz)
Date: Wed Jan 12 2000 - 18:19:17 EST


> Number two, how do we implement this as a traditional filesystem? The
> first question to be answered is whether the Linux VFS layer makes few
> enough assumptions on the semantics of filesystems so that a gcfs is
> possible. For example, it must not make the assumption anywhere that
> to rmdir() a directory the directory must be empty. It must not make
> the assumption that reference-counting is effectively used in the
> filesystem. It must not make the assumption that the .. entry in a
> directory points to the ``parent'' directory (something which is
> rather meaningless in a gcfs). And so on. Or, if it makes these
> assumptions, it must make them in a benign way, that is, it need can
> be fooled into thinking that the filesystem has Unix semantics.
>
> This is where I have insufficient knowledge of the kernel internals to
> answer all these questions: can someone fill me up on this? It would
> be a shame to start worrying about all the gc details only to discover
> that the gcfs cannot be implemented under Linux because the VFS makes
> some faulty assumptions about filesystem semantics.

It won't work. dentry cache expects directory structure as tree. A lot of
lockups or hanging references will happen when you create directory loop.

You can try implementing it for 2.0 kernels - there is no dcache, and so
directory anomalies shouldn't cause much trouble.

Mikulas

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Jan 15 2000 - 21:00:21 EST