public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jan Harkes <jaharkes@cs.cmu.edu>
To: "Albert D. Cahalan" <acahalan@cs.uml.edu>
Cc: Larry McVoy <lm@bitmover.com>,
	Jerome de Vivie <jerome.de-vivie@wanadoo.fr>,
	linux-kernel@vger.kernel.org, linux-fsdev@vger.kernel.org,
	martizab@libertsurf.fr, rusty@rustcorp.com.au
Subject: Re: Yet another linux filesytem: with version control
Date: Tue, 24 Jul 2001 15:07:45 -0400	[thread overview]
Message-ID: <20010724150745.A19281@cs.cmu.edu> (raw)
In-Reply-To: <200107240524.f6O5OwX286884@saturn.cs.uml.edu>
In-Reply-To: <200107240524.f6O5OwX286884@saturn.cs.uml.edu>

On Tue, Jul 24, 2001 at 01:24:57AM -0400, Albert D. Cahalan wrote:
> The traditional revision control approach seems to get pretty
> wasteful as well. Maybe you have a few dozen developers, each
> with a few files checked out of a multi-gigabyte source tree.

Ouch, but that is a lot more difficult in kernel space than that.
Every developer would have his own personal view on the same filesystem.

One problem is how to identify a developer, by his uid's/gid's? This is
either not fine-grained enough, or breaks with setuid/gid processes. The
process group id or session id, these are already used by shells for
signal handling and typically don't follow a user's identity. AFS uses
yet another 'session identifier', the process authentication group.

Maybe some of the session information can be stored in the vfsmount
structure, or it might already be solved by Al's namespaces patch and
can be 'set' by remounting a file system. Perhaps the security module
work will give the stuff to track actions of a specific user.

Then keep the various versions/views of a file need to be kept separate
from each other in the pagecache, which involves having a separate
inode/address_space for each filehandle. On the other hand, when two
developers are working with the same revision they expect UNIX sharing
semantics, so in these cases at least the address_space does need to be
shared.

This actually should work as a result of how Coda handles container
files as long as we agressively unhash dentries and have iget return new
inodes each time, a checked-out revision can then be stored in a
separate container file. But as a result there would be many more
upcalls to userspace, i.e. a serious performance penalty.

    Jan


  parent reply	other threads:[~2001-07-24 19:08 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-07-23 21:06 Yet another linux filesytem: with version control Jerome de Vivie
2001-07-23 21:17 ` Larry McVoy
2001-07-23 21:51   ` Rik van Riel
2001-07-23 22:19     ` Jerome de Vivie
2001-07-23 22:29       ` Rik van Riel
2001-07-23 23:05         ` Jerome de Vivie
2001-07-23 23:30           ` Rik van Riel
2001-07-24 13:30             ` Olivier Galibert
2001-07-24 16:42             ` Jerome de Vivie
2001-07-23 23:14         ` Larry McVoy
2001-07-24 23:57       ` Peter A. Castro
2001-07-23 22:00   ` Jerome de Vivie
2001-07-23 22:14     ` Larry McVoy
2001-07-23 22:27       ` Jerome de Vivie
2001-07-24  5:24   ` Albert D. Cahalan
2001-07-24  5:34     ` Larry McVoy
2001-07-24  6:06       ` Alexander Viro
2001-07-24  9:30       ` Padraig Brady
2001-07-24 19:07     ` Jan Harkes [this message]
2001-07-24  2:13 ` Keith Owens
2001-07-24 13:07 ` Andrew Pimlott
2001-07-24 17:14   ` Jerome de Vivie
2001-07-24 19:05     ` Andrew Pimlott
2001-07-24 23:14       ` Jerome de Vivie
2001-07-25  0:39         ` Andrew Pimlott
  -- strict thread matches above, loose matches on Subject: below --
2001-07-23 22:50 Florin Iucha

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20010724150745.A19281@cs.cmu.edu \
    --to=jaharkes@cs.cmu.edu \
    --cc=acahalan@cs.uml.edu \
    --cc=jerome.de-vivie@wanadoo.fr \
    --cc=linux-fsdev@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lm@bitmover.com \
    --cc=martizab@libertsurf.fr \
    --cc=rusty@rustcorp.com.au \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox