All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Masover <ninja@slaphack.com>
To: "Maciej Sołtysiak" <pysiak.satriani@wp.pl>
Cc: "reiserfs-list@namesys.com" <reiserfs-list@namesys.com>
Subject: Re: future r4 maintenance question
Date: Sat, 22 Jul 2006 15:16:48 -0500	[thread overview]
Message-ID: <44C287B0.2060907@slaphack.com> (raw)
In-Reply-To: <1287558327.20060722215128@wp.pl>

Maciej Sołtysiak wrote:

> I Understand. This is good news. Hm, do you think that reiser4's pluggability
> is enough to have this single kernel tree (fs/reiser4) for a longer period

> away with the "future vision" and other "future *" stuff you've written
> about ? eg. I remember reading about very granular security ACLs like
> restricting a certain line in a file (like /etc/passwd)

I think the granular security ACLs were always intended to be a v4 thing 
(with plugins).  I believe the Future Vision stuff is about even more 
namespace unification.  I seem to remember v5 was semantic changes and 
v6 was a semi-distributed FS, but I could have that backwards... 
Anyway, there are definitely plans for things which are non-trivially 
beyond the plugin capabilities of Reiser4, though they will almost 
certainly use Reiser4 as a starting point.

There's another note to kernel developers -- if Reiser5, 6, and 7 are 
implemented as suites of plugins on top of Reiser4, then the Reiser4 
code will be maintained for a very long time.  Kind of like ext2 vs 
ext3, only moreso -- a Reiser5 FS may well be a Reiser4 FS mounted with 
additional mount options.

There is definitely a lot that can be done to move Reiser4 (as it is 
today) closer to the Reiser4 whitepaper on the homepage.  ACLs are one 
thing, files as a directory are another.  The idea of v4 is to do away 
with many cases where a separate namespace is created for no good reason 
-- for instance, where is the data in an id3 tag?  It's inside an mp3 
file, and you can only get to it with tools written for id3 tags of mp3 
files.  The Reiser4 concept is to allow things like that to exist, but 
not require programs to know about libid3 or whatever.  Want to know 
what the artist of a particular file is?

foo.mp3/.../id3/artist

Or maybe a more generic way:

foo.mp3/.../song-info/artist

That way, you could have tools which don't even have to know if the file 
has an id3 tag, or something entirely new, or if the metadata is being 
stored outside the main file.  It'd be entirely possible to allow that 
file to be treated as a separate file entirely by the plugin, rather 
than something derived from foo.mp3.

The advantages don't seem immediately obvious until you consider that 
the program which does this doesn't have to even know that it's dealing 
with song metadata.  Consider some of the one-line shell scripts possible:


# Change the artist name for all songs in the directory:
for i in *; do echo 'Jimi Hendrix' > foo.mp3/.../song-info/artist; done

# Make a playlist of all files by Hendrix, mp3 or otherwise:
for i in `find`; do
	if [ `cat "$i/.../song-info/artist"` == 'Jimi Hendrix' ]; then
		echo "../$i" >> playlists/hendrix.m3u;
	fi;
done

# Copy all files needed by said playlist to a USB device:
cp playlist/hendrix.m3u/.../files/* /mnt/usb
cp playlist/hendrix.m3u /mnt/usb


I'm sure others can think of much more interesting examples.

All of that is planned for v4, eventually.  It's very pluggable.

Well, I think it is.  I don't work here...

  reply	other threads:[~2006-07-22 20:16 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-07-22 15:32 future r4 maintenance question Pysiak Satriani
2006-07-22 18:03 ` Hans Reiser
2006-07-22 19:51   ` Maciej Sołtysiak
2006-07-22 20:16     ` David Masover [this message]
2006-07-22 21:26       ` Maciej Sołtysiak
2006-07-23  6:23       ` Hans Reiser
2006-07-23  6:07     ` Hans Reiser
2006-07-22 18:53 ` Mike Benoit
2006-07-22 19:12   ` Matthias Barremaecker
2006-07-22 19:42   ` David Masover
2006-07-23 11:11     ` Sander Sweers
2006-07-22 20:04   ` Maciej Sołtysiak
2006-07-22 19:32 ` David Masover

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=44C287B0.2060907@slaphack.com \
    --to=ninja@slaphack.com \
    --cc=pysiak.satriani@wp.pl \
    --cc=reiserfs-list@namesys.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.