Re: VFS questions

Stig Venaas (venaas@nvg.ntnu.no)
Fri, 2 May 1997 21:40:35 +0200 (MET DST)


> In my current mockup I'm passing the directory through in the options
> data, but this isn't very clean.
>
> Would any other file-system ever need a directory as the "device"? If
> so I can make some changes to fs/super.c to accomodate it. I don't
> want to make changes just for one file-system though since I can fake
> things for now.

I'm passing the directory in the options data as well. I've been thinking
about some generic way of doing it too.

> Now is a very good time to tell me if someone else has already got a
> working lofs :-)

Well, I've been doing some work on it. I've got a somewhat buggy read-only
version you could have a look at. I haven't done much work on it yet, but
it works sort of. There are some bugs in there, in particular I'm not
sure about when I should call iget/iput. I need to take a closer look at
the kernel code. I'm fairly new to kernel hacking. If you still are
interested, have a look at ftp.nvg.ntnu.no in /venaas/linux.
null.patch is against 2.1.29, but there are also one for 2.1.36.
nullmount.c is a simple mount program.

What I think might be a good idea, is to implement stackable layers.
lofs or nullfs is then just a null layer. A lot of useful stuff like
unionfs, cachefs etc. is easier to implement then. One can have layers
like compression, encryption, acl's, watchdogs etc. For details, see

http://gost.isi.edu/~johnh/WORK/stacking_faq.html
and
http://gost.isi.edu/~johnh/PAPERS/Heidemann91c.html

Stig