2006-08-23 17:24:05

by Jörn Engel

[permalink] [raw]
Subject: Re: [RFC] VFS: FS CoW using redirection

On Sun, 9 July 2006 15:50:36 +0300, Al Boldi wrote:
>
> Consider something simple like this:
>
> VFS - anyFS1 (r/w) used normally, unless ENotFound, then redirect read to
> \ anyFS2, or CoW from anyFS2 to anyFS1.
> anyFS2 (r/o) used normally.

That concept is known as union mount. Jan Blunck did some patches in
that direction, you might be able to find them in the archives. If
not, just send him a mail.

J?rn

--
...one more straw can't possibly matter...
-- Kirby Bakken


2006-08-23 18:05:57

by Josef Sipek

[permalink] [raw]
Subject: Re: [RFC] VFS: FS CoW using redirection

On Wed, Aug 23, 2006 at 07:24:02PM +0200, J?rn Engel wrote:
> On Sun, 9 July 2006 15:50:36 +0300, Al Boldi wrote:
> >
> > Consider something simple like this:
> >
> > VFS - anyFS1 (r/w) used normally, unless ENotFound, then redirect read to
> > \ anyFS2, or CoW from anyFS2 to anyFS1.
> > anyFS2 (r/o) used normally.
>
> That concept is known as union mount. Jan Blunck did some patches in
> that direction, you might be able to find them in the archives. If
> not, just send him a mail.

Or you can give Unionfs a try: http://www.unionfs.org

Josef "Jeff" Sipek.

--
The box said "Windows XP or better required". So I installed Linux.

2006-08-26 19:03:41

by Al Boldi

[permalink] [raw]
Subject: Re: [RFC] VFS: FS CoW using redirection

Josef Sipek wrote:
> On Wed, Aug 23, 2006 at 07:24:02PM +0200, J?rn Engel wrote:
> > On Sun, 9 July 2006 15:50:36 +0300, Al Boldi wrote:
> > > Consider something simple like this:
> > >
> > > VFS - anyFS1 (r/w) used normally, unless ENotFound, then redirect read
> > > to \ anyFS2, or CoW from anyFS2 to anyFS1.
> > > anyFS2 (r/o) used normally.
> >
> > That concept is known as union mount. Jan Blunck did some patches in
> > that direction, you might be able to find them in the archives. If
> > not, just send him a mail.

Thanks for the pointer!

So what was the rejecting theme?

> Or you can give Unionfs a try: http://www.unionfs.org

UnionFS is great, but it incurs additional overhead, as it lives below the
real VFS. What could be really great, is to move some basic functionality
abstractions from UnionFS into VFS proper.


Thanks!

--
Al

2006-08-27 17:15:22

by Jörn Engel

[permalink] [raw]
Subject: Re: [RFC] VFS: FS CoW using redirection

On Sat, 26 August 2006 22:05:21 +0300, Al Boldi wrote:
>
> So what was the rejecting theme?

I don't believe there was one. Jan simply didn't push much, so noone
was forced to resist him. And noone else needed union mount enough to
push Jan.

> > Or you can give Unionfs a try: http://www.unionfs.org
>
> UnionFS is great, but it incurs additional overhead, as it lives below the
> real VFS. What could be really great, is to move some basic functionality
> abstractions from UnionFS into VFS proper.

Welcome to Jan's work. :)

If you want to make this vision happen, one of the missing pieces is a
method for copyup, an in-kernel copying routine. Unionfs needs is
just the same as Jan's patches do and in the past Linus didn't like my
approach of using sendfile for it. You could take a stab at the
splice code and see how that can be used for copyup.

J?rn

--
Write programs that do one thing and do it well. Write programs to work
together. Write programs to handle text streams, because that is a
universal interface.
-- Doug MacIlroy

2006-08-28 02:11:04

by Josef Sipek

[permalink] [raw]
Subject: Re: [RFC] VFS: FS CoW using redirection

On Sun, Aug 27, 2006 at 07:15:10PM +0200, J?rn Engel wrote:
> On Sat, 26 August 2006 22:05:21 +0300, Al Boldi wrote:
...
> > > Or you can give Unionfs a try: http://www.unionfs.org
> >
> > UnionFS is great, but it incurs additional overhead, as it lives below the
> > real VFS. What could be really great, is to move some basic functionality
> > abstractions from UnionFS into VFS proper.
>
> If you want to make this vision happen, one of the missing pieces is a
> method for copyup, an in-kernel copying routine. Unionfs needs is
> just the same as Jan's patches do and in the past Linus didn't like my
> approach of using sendfile for it. You could take a stab at the
> splice code and see how that can be used for copyup.

The thing with union mounts/unionfs is that some of the functionality makes
sense to have in a file system while other parts make sense to have in the
VFS - the way I see it, namespace related bits should be in VFS while
persistent state should be done on the file system level.

Josef "Jeff" Sipek.

--
If I have trouble installing Linux, something is wrong. Very wrong.
- Linus Torvalds