login
Header Space

 
 

Re: [PATCH 0/7] OMFS filesystem version 3

Previous thread: [PATCH 7/7] omfs: update kbuild to include OMFS by Bob Copeland on Saturday, April 12, 2008 - 6:58 pm. (2 messages)

Next thread: [PATCH 6/7] omfs: add checksumming routines by Bob Copeland on Saturday, April 12, 2008 - 6:58 pm. (2 messages)
To: <linux-kernel@...>
Cc: <linux-fsdevel@...>, <akpm@...>, Bob Copeland <me@...>
Date: Saturday, April 12, 2008 - 6:58 pm

(Andrew, perhaps this could bake in -mm for a cycle or two if 
there are no objections?)

These patches 1-7 add the Optimized MPEG Filesystem, a proprietary
filesystem used by the embedded devices Rio Karma and ReplayTV 
which are no longer manufactured.

I've been maintaining this reverse-engineered filesystem
out-of-tree since around 2.6.12.  It has stabilized to the point
that, while not quite feature-complete, it is close enough that
I'm pretty much just applying VFS API updates to it these days.
So, in the spirit of stable_api_nonsense, I request that it be
considered for inclusion for .26 or later.  

There is a small user community (&lt;20?) using the driver today.
According to google, it has been packaged by others for Debian,
Ubuntu, and Mandriva.

I have also written an implementation in FUSE.  However, in
its current unoptimized state, the FUSE version is about half the 
speed of the kernel driver.  Either way, the kernel version could 
use a review given some distros have apparently picked it up.

version 3:
 - fixed sparse warnings
 - added more sanity checking in list traversals

version 2:
 - removed private inode cache 
 - included GPL v2 notice
 - rewrote omfs_count_free to use hamming weight library functions 
 - removed duplicated crc-itu-t

Version 1: initial post

--
To: Bob Copeland <me@...>
Cc: <linux-kernel@...>, <linux-fsdevel@...>
Date: Saturday, April 12, 2008 - 8:03 pm

Adding a new FS to Linux is a pretty major thing.

- A key question (which you don't seem to have addressed at all!) is: why
  is this a useful addition to Linux?  What are the filesystem's strengths?
  What is its application?  How does it improves Linux and by how much?

  I'll go aehad and assume that its sweet-spot is streaming media files
  (perhaps more than one at a time?).  If so, then comparative performance
  measurements would be the key piece of information which we'll need when
  making a merge decision.  Probably against ext3, ext4 and XFS.

- What are the filesystem's features?  Does it journal changes, or is it
  inherently crash-safe?  Or is fsck-style repair needed?

- We'd like to see some documentation:

  - Mount options

  - Location of userspace support tools such as mkfs and fsck

  - Documentation for those tools

- A MAINTAINERS record, please?


If I include this in -mm, some kind people will try it out.  It would be
most helpful for the changelog (or even the Kconfig help) to include
sufficient information for people to be able to create, mount and check an

Who did the reverse-engineering, and how was it done?

Please make us confident that we won't get our butts sued off or something.
--
To: Andrew Morton <akpm@...>
Cc: <linux-kernel@...>, <linux-fsdevel@...>
Date: Saturday, April 12, 2008 - 11:33 pm

Honestly, I'm not sure if this FS is mainline material or not.  If it is, 
it is in the sense that the Amiga FS, befs, and so forth are useful:
it's a dead filesystem that a very few people still have a reason to
use.  If FUSE is where this should live, then I'll just simply focus my
time on that instead (since I already have it in FUSE).

Primarily the users are Rio Karma owners such as myself.  For some reason
the designers stuck this filesystem on the device, so unless someone hacks 
the firmware, using OMFS is the only way to get MP3 files on the thing 

Okay.  I can do benchmarks but I'm pretty sure it will be worse than all 
of them by a long shot.  

Note my Kconfig text:
[...]
+	  player and ReplayTV DVR.  Despite the name, this filesystem is not
+	  more efficient than a standard FS for MPEG files, in fact likely
+	  the opposite is true.  

Uncached lookups in particular are very slow because directories are 
essentially a huge hash table.  You might have to seek through several 
siblings in a bucket to get to the target file.

They seem to have designed for online recovery with checksumming and
mirroring of every FS object.  This module updates these, but it does


I'm not sure there's a company to sue anymore.

Most of it was done by members of the ReplayTV community; I just used
their documentation.  I'll see if I can get in touch with one of them to 
see how they came up with that.  I only figured out a few things, for 
which I'd use the Karma as a black box for copying/deleting files etc. 
and then poke at the resulting disk image with a hex editor.

-- 
Bob Copeland %% www.bobcopeland.com 

--
To: Bob Copeland <me@...>
Cc: Andrew Morton <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 11:14 pm

&lt;IANAL&gt;

Bob, you have to be careful there; an argument like "there may not be a
company to sue" may not hold.  IP rights, patents and their filings, and
more, can be sold, traded, transferred, inherited, etc. -- even if the
original company is no longer in business.  I don't know the history of
ReplayTV or how it went out of business, but it might be worth a check to
see if there's anyone who can still claim any rights over any part of OMFS
(e.g., chapter 11 creditors who may feel they didn't get fully compensated).
The irony is that as long as omfs gets little attention, no one is likely to
sue; but once and if it gets into mainline and lots of Big Name Linux
distros start carrying it, *then* someone may come out from the shadows to
sue.

&lt;/IANAL&gt;

Erez.
--
To: Bob Copeland <me@...>
Cc: Andrew Morton <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Sunday, April 13, 2008 - 6:00 am

This is actually quite interesting. Checksuming filesystem sounds
pretty useful.

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To: Bob Copeland <me@...>
Cc: Andrew Morton <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Sunday, April 13, 2008 - 5:04 am

&gt; Honestly, I'm not sure if this FS is mainline material or not.  If it is, 

It looks mainline to me. It is far more relevant than most of the other
file systems we support and it doesn't mess up core code at all. It's a
loadable kernel module so the impact is basically nil, as well as being

If you used their documentation and didn't do the reverse engineering or
read any ReplayTV code there shouldn't be any problems. The big danger is
if you reverse engineer their code and you write new code you may copy
their implementation even accidentally (or be held to have done so).

Alan
--
To: Bob Copeland <me@...>
Cc: <linux-kernel@...>, <linux-fsdevel@...>
Date: Saturday, April 12, 2008 - 11:55 pm

Yes, pursuing the FUSE implementation sounds a better approach - it avoids
burdening the kernel with a filesysstem which few will be interested in and
is more practical for use by those who _are_ interested in it.

--
To: Andrew Morton <akpm@...>
Cc: Bob Copeland <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Sunday, April 13, 2008 - 4:01 am

No way.  For a normal foreign block filesystem a proper kernel
implementation is much better.  And this one is particularly
well-written.  Lately I really start wondering why we keep adding crap
all over the core, but if we have a modular new filesystem that's quite
---end quoted text---
--
To: Christoph Hellwig <hch@...>
Cc: Bob Copeland <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Sunday, April 13, 2008 - 4:20 am

I'm not complaining about anything.  Who has?

As the filesystem is for occasional, non-performance-sensitive use
by a very small number of people, doing it via FUSE sounds like an
all-round more practical approach.  This has nothing to do with quality of
implementation at all.

I don't have particularly strong opinions either way.

--
To: Andrew Morton <akpm@...>
Cc: Christoph Hellwig <hch@...>, Bob Copeland <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Sunday, April 13, 2008 - 4:28 am

It's a stupid idea.  Moving a simple block based filesystem means it's
more complicated, less efficient because of the additional context
switches and harder to use because you need additional userspace
packages and need to setup fuse.

We made writing block based filesystems trivial in the kernel to grow
more support for filesystems like this one.
--
To: Christoph Hellwig <hch@...>
Cc: Andrew Morton <akpm@...>, Bob Copeland <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Friday, April 18, 2008 - 8:46 am

FUSE is more than just providing a framework for block based filesystems. 
Sometimes FUSE is criticised for the extra useful features it provides. 

This is about as true as claiming FUSE doesn't have any context switch 
overhead. Sometimes it has none, sometimes small, sometimes it can be 
significant (e.g. when not using the 50 fold context switch speed up 
patch). The question is, how releavant it is? Just some short notes,

 1. Using the in-kernel cached data involves no context switch for FUSE.

 2. On commodity hardware Linux can do a million context switches. 
    File system workloads barely need or can do more than a few tens 
    of thousands file operations per second (fsops) due to storage 
    bottlenecks. Which means maximum about only extra 5% CPU use for 
    block based FUSE file systems. 

    If they do more fsops then typically it's served from the kernel caches
    and no user space and context switches are involved at all.

 3. ext3 with the highly optimized dir_index is far the fastest 
    traditional block based file system in file creation. Once I wrote
    a FUSE file system which apparently would have been faster if the 
    VFS wouldn't do needlessly a lookup() before create(). AFAIK some 
    network file systems have the some performance problem because of 
    this.

 4. The dominant factors for performance is design, quality of the
    implementation and lead time to optimize for the (latest) hardware. 
    What's the best way to realize this depends on many factors.

 5. Some workloads can indeed trigger very high context switches. This 
    could be improved/solved but probably it would be more beneficial to 

The fuse install should solve all setup issues and a fuse fs can be written 
where the traditional commands work:

	mount -t fstype device mountpoint
	umount mountpoint

Ntfs-3g doesn't even need fuse user space being installed, only a 
modprobeable fuse kernel module.

	Szaka

-- 
NTFS-3G:  http://ntfs-3g.org
--
To: linux kernel list <linux-kernel@...>
Date: Thursday, May 1, 2008 - 10:45 am

* Szabolcs Szakacsits &lt;szaka@ntfs-3g.org&gt; wrote:

Hi folks,

&lt;big_snip /&gt;

I've just fought through this thread, maybe missed some points, 
and I'll try no to repeat to repeat arguments already said, but:

IMHO, many of the filesystems should belong to userland, 
(especially those I'd call "exotic"). Maybe some decision points:

* high complexity (-&gt; not easy to debug)
* not required for booting 
* not yet matured (within kernel) 
* not performance critical
* requires much userland assistance
* not used permanently (just from time to time)
* not actually an IPC mechanism

My first candidate would be coda: 

It never worked well for me, even often have to reload the 
kernel driver. As most of the logic already *is* in userland, 
there wouldn't be a performance tradeoff when doing the kernel
interface entirely via FUSE or even let venus just be an 9P server.


cu
-- 
---------------------------------------------------------------------
 Enrico Weigelt    ==   metux IT service - http://www.metux.de/
---------------------------------------------------------------------
 Please visit the OpenSource QM Taskforce:
 	http://wiki.metux.de/public/OpenSource_QM_Taskforce
 Patches / Fixes for a lot dozens of packages in dozens of versions:
	http://patches.metux.de/
---------------------------------------------------------------------
--
To: <hch@...>
Cc: <akpm@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Sunday, April 13, 2008 - 6:37 am

I don't feel strongly either way, and Christoph's arguments against
fuse are mostly valid (although neither of them are serious).

There's one thing which makes fuse a slightly better candidate for
applications where the number of users is low: stability.  Unless you
or your users test the hell out of your filesystem, there always a
chance that some bugs will remain.  These rarely bring down the whole
system, but it usually requires a reboot to let you continue using the
Oopsing fs.

Miklos
--
To: Miklos Szeredi <miklos@...>
Cc: <hch@...>, <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Sunday, April 13, 2008 - 8:45 pm

I don't have hard numbers, but anecdotally my FUSE version is quite 
a bit less performant.  That's no criticism of FUSE - I just haven't

Sure, though this FS won't see the same kind of use as ext2.  Most users
would just mount it, copy a bunch of files, then unmount it, and if that
works then great.

It has at least seen some testing with fsx, though I had to turn off most 
of the checks since growing truncate is still unimplemented.  

-- 
Bob Copeland %% www.bobcopeland.com 

--
To: Bob Copeland <me@...>
Cc: Miklos Szeredi <miklos@...>, <hch@...>, <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Friday, April 18, 2008 - 6:30 am

Thankfully you need none, it's already there by FUSE and the kernel. The 
trick is exactly that you can have the kernel performance and the left is 
moved to user space with typically negligible performance overhead which is 
usually well compensated with faster delivered new features and bug fixes.

The completely unoptimized ntfs-3g read/write saturates my USB disks with 
25-30 MB/sec using 8% (read), 35% (write) CPU time on a 2.5 GHz Core 2 Duo 
with cold caches.

If you have the free hot caches then it performs the same as in-kernel 
file systems, user space isn't involved at all.

I noticed that the OMFS kernel driver supports only the USB interface and 
the FUSE one both the network and the USB one. Isn't it possible that you 
compared the performance using the USB with the kernel vs the much slower 
and lower latency network with FUSE? You should compare performances using 
only the USB interface in both cases.

If you did use the USB interface with FUSE then what exactly do you mean by 
"quite a bit less performance" in numbers and workloads? What you did, how 
long it took using what CPU?

Thanks,
	    Szaka

-- 
NTFS-3G:  http://ntfs-3g.org
--
To: Szabolcs Szakacsits <szaka@...>
Cc: Miklos Szeredi <miklos@...>, <hch@...>, <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Friday, April 18, 2008 - 9:51 am

Correct me if I'm wrong, but one place where caches seem necessary is for
lookup.  My file system already has an inode number; my understanding
is that the kernel inode cache and dcache are caching the FUSE inode by
filename and its hashed inode number.

In FUSE, on open, I'm passed a filename which I then have to resolve into an
inode # via my own lookup.  The VFS does the path_lookup as part of sys_open,
and since I get to put private data into the struct inode, I'll generally
already have the block # and various other info in the dcache by the time
open is called.

Also, if you stuff inode data into the private fh field in fuse_file_info,
you need to be sure that any subsequent lookups always return the same
inode structure, otherwise a thread doing ftruncate vs one doing truncate
will cause issues.  So I created an internal dcache to solve those two

Nope, that's not possible, sorry.  Both require use of USB.  lkarmafs and

Like I said it was anecdotal (copy 20 gigs of X) in both.  I'm sure a
good portion of it is my fault, such as doing unnecessary malloc &amp; copies
in omfs_fuse.  I have put exactly zero effort into making it fast so far.

BTW, I hardly intended to start a huge VFS vs FUSE debate.  I think FUSE
is great.  I'm not sure it's the right fit for this, is all.

-- 
Bob Copeland %% www.bobcopeland.com
--
To: Bob Copeland <me@...>
Cc: Miklos Szeredi <miklos@...>, <hch@...>, <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Friday, April 18, 2008 - 1:35 pm

I also don't advocate any solution, only interested in the FUSE myth 
busting and making it easier to use and develop for, i.e. having the best 
possible performance with zero effort.

I checked both solutions quickly, I think they are nicely written.

The kernel driver had 30 MB/s with 10% CPU usage, the FUSE version had 
6 MB/s with high I/O waiting.

The major reason seems to be that the FUSE version reads heavily from the 
block device during pure write operations, while the kernel driver never. 
There can be several non-exclusive explanations.

One of them, as you wrote, the functionality is not exactly the same, the 
FUSE one does more. If it's relevant or not, you should know. If anything 
is involved with reading from multiply places regularly then it's relevant.

Moreover when you're writing to a block device from user space then the 
size and position of the block should be page aligned, otherwise you end up 
doing unwanted synchronous reads instead of the believed asynchronous 
writes. Solving this issue for the most common cases resulted a sometimes 
over 10 fold write speedup in ntfs-3g. But of course it would be nice if 
the kernel just provided this for everybody.

Btw, mkomfs.c is missing a '#define _FILE_OFFSET_BITS 64' which is needed 
to open LFS files.

        Szaka

--
NTFS-3G:  http://ntfs-3g.org
--
To: Szabolcs Szakacsits <szaka@...>
Cc: Miklos Szeredi <miklos@...>, <hch@...>, <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Friday, April 18, 2008 - 1:48 pm

Yep, I suspect switching to the lower-level API plus switching to mmap()
and getting rid of various memcpy's in omfs.c would make a huge difference.

Cool, thanks for the tips!

-- 
Bob Copeland %% www.bobcopeland.com
--
To: <me@...>
Cc: <szaka@...>, <miklos@...>, <hch@...>, <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Friday, April 18, 2008 - 10:23 am

Fuse has two different APIs.  For the "high level", path based one,
this is true.  The "low level" one is very similar to the one provided
by the VFS.

On the low level interface, when the -&gt;lookup() method is called, it
will provide a "nodeid", which is just a per-inode unique cookie (not
the same as st_ino).  It can be a pointer to the private inode data
for example, and in the -&gt;forget() method this private data can be

And I think the VFS is great.  Undoubtedly kernel programming has it's
own charm, and I definitely don't want to scare you away from that.
Merging into mainline is a great reward, which must be erned the hard
way.  The debate is just part of that ;)

I also want to dispel any myths surrounding fuse, because those help
nobody.

Miklos
--
To: Miklos Szeredi <miklos@...>
Cc: <szaka@...>, <hch@...>, <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Friday, April 18, 2008 - 10:43 am

Sure.  I'll go on record saying that omfs_fuse was written over a weekend and
can not be considered a good example of anything.  I already had a
proto-libomfs that I had made for omfsck and mkomfs, and wanted to see how
easy it would be to wire that stuff up into a FUSE fs.  Pretty easily, it
turned out.

-- 
Bob Copeland %% www.bobcopeland.com
--
To: Szabolcs Szakacsits <szaka@...>
Cc: Bob Copeland <me@...>, Miklos Szeredi <miklos@...>, <hch@...>, <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Friday, April 18, 2008 - 7:52 am

Presumably if "user space isn't involved at all", it must require that
user space has granted caching rights to the kernel over a FUSE
cache coherency protocol?

Otherwise I don't see how the kernel could coherently cache file pages
for some kinds of FUSE filesystems.  (E.g. sshfs, for example: every
operation must surely invoke a user space request or involve granting
a caching right to the kernel, to keep accesses coherent with other
users of the same remote files).

Ergo, either its not coherent, or there is some coherency protocol,
which does require _some_ work in the user space implementation.

-- Jamie
--
To: <jamie@...>
Cc: <szaka@...>, <me@...>, <miklos@...>, <hch@...>, <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Friday, April 18, 2008 - 8:20 am

Most filesystems (ntfs-3g included) cannot be modified from the
outside, so coherency isn't an issue.

Otherwise currently fuse provides rather crude settings for caching:

  - timeout for attributes (per-inode, default 1s)
  - timeout for names (per-dentry, default 1s)
  - page cache is bypassed completely (per-file, default off)
  - invalidation of page cache on open (per-open, default on)

Writes are synchronous even in the caching case, for various reasons.
That is one of the reasons why write performance can be worse than
read performance.  For some filesystems (ntfs-3g), this limitation
could be lifted, but that requires that the mtime handling be moved to
the kernel in these cases, which is not yet possible.

There are also plans to add some sort of cache coherency protocol,
where the filesystem can asynchronously call back to fuse to

Sshfs is not coherent (but neither is NFS), it just has timeouts for
caches and invalidation based on modification time.

Miklos
--
To: Miklos Szeredi <miklos@...>
Cc: <szaka@...>, <me@...>, <hch@...>, <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Friday, April 18, 2008 - 8:57 am

Seems sensible.  As someone who is deep in coherency protocols at the
moment (I'm writing a robust distributed database/filesystem) I don't

Great!

I suggest adding another option (as well) where the filesystem can ask
fuse to send it synchronous validation requests - some things require
that.  (In my own work, the choice of A-&gt;B async invalidation and B-&gt;A
synchronous validation is heuristic: some usage patterns benefit from

Fwiw, I think NFS version 4 is coherent (it uses leases), and older
NFS should be coherent when you use fcntl file locks (it's not very
efficient though).

I have been bitten a few times by timeout based caches in the past
(NFS and SMB (pre-oplock)).  Simple things like editing a file, then
running "ssh compiler-box make" from the editor quietly building
incorrect code - and even subsequent make commands don't fix it.  Or
when I edit a file, then tell someone I've changed the file - and then
they edit the file, and my edits are lost.  Very annoying.  Nobody
should build those kind of caches into new software.  :-)

-- Jamie
--
To: <jamie@...>
Cc: <miklos@...>, <szaka@...>, <me@...>, <hch@...>, <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Friday, April 18, 2008 - 12:01 pm

Yes, that makes sense.  I expect this could be done by extending the
existing requests with a flag saying the result is already cached.
And then the filesystem can either reply with a special "cached data

Oh well, you can turn off caching if it bothers you :)  OTOH it would
be rather hard (and probably against the point) to try to extend the
sftp protocol to handle cache coherency.  Sshfs is not meant to be a
normal filesystem (although some people are trying to use it for home
directories and such), just a simple way to access remote files.

Miklos
--
To: Miklos Szeredi <miklos@...>
Cc: <szaka@...>, <me@...>, <hch@...>, <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Friday, April 18, 2008 - 12:15 pm

Oh, I agree.  Violent agreement, they call it :-)

-- Jamie
--
To: <me@...>
Cc: <miklos@...>, <hch@...>, <akpm@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 3:35 am

The worst I/O performance problems should be gone by 2.6.26.
Otherwise there shouldn't be a need to add optimizations to the
userspace code.  The kernel caches take care of that, just like for a

Exactly.  Which means, that bugs which happen only in special
circumstances don't surface early and cause more headaches later.

Miklos
--
To: Miklos Szeredi <miklos@...>
Cc: <hch@...>, <akpm@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Sunday, April 13, 2008 - 5:15 pm

I think it's a slippery slope from that to rewriting Linux as a
microkernel.

Simple block filesystems like this belong in the kernel.

-- 
dwmw2

--
To: <dwmw2@...>
Cc: <miklos@...>, <hch@...>, <akpm@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 3:25 am

You say that as if a microkernel had _no_ advantages.  Which isn't
true: it's just a trade between performance and encapsulation.  What I
was saying, that if there are few users, and so the tester base is
limited, then they _might_ just be better off with a slower, but more
stable solution.

I'm not advocating moving ext3 to fuse.  And I didn't advocate moving
ntfs to fuse, still that was done and the resulting filesystem at the
moment happens to outperform the kernel one in every respect ;)

Miklos
--
To: Miklos Szeredi <miklos@...>
Cc: <dwmw2@...>, <hch@...>, <akpm@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 5:42 am

Yes, that's quite annoying as FUSE doesn't work with my architecture,
so I can't use the only good NTFS driver.... grr! :-)

FUSE is great for user-mounted filesystems, though.  Having to use
"su" in shell scripts which modify loopback filesystems was always
very ugly.

I don't see why we need such a dichotomy, though.  The VFS API is
sensible enough that it should be possible to compile the same
filesystem code to run in kernel or in FUSE.

-- Jamie
--
To: <jamie@...>
Cc: <miklos@...>, <dwmw2@...>, <hch@...>, <akpm@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 5:58 am

Well, yeah:

  http://lkml.org/lkml/2006/2/27/148

Oh, you mean without having to run the whole kernel around the
filesystem?  Well, that's a bit more tricky: filesystems use not just
the VFS API, but the block, VM, SLAB, etc. APIs as well.  Porting all
of these to userspace and keeping them in sync with the kernel changes
doesn't sound much fun.

Miklos
--
To: Miklos Szeredi <miklos@...>
Cc: <dwmw2@...>, <hch@...>, <akpm@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 7:55 am

It's not really a joke.  It really is a problem: I'm supposed to
provide NTFS support for a project, but the kernel I'm using doesn't
work with FUSE (too old for the FUSE version needed by ntfs-3g), and
the in-kernel NTFS isn't good enough - all the active development work
is done on ntfs-3g.

The :-) is because it's my problem, nobody else's.

-- Jamie

--
To: <jamie@...>
Cc: <miklos@...>, <dwmw2@...>, <hch@...>, <akpm@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 8:26 am

How old?  The out of tree fuse module (hoping to get rid of it soon)
works down to 2.6.9.  Beyond that it does probably require a fair
amount of porting work.

Miklos
--
To: Miklos Szeredi <miklos@...>
Cc: <dwmw2@...>, <hch@...>, <akpm@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 6:35 pm

I imagine that backporting FUSE to 2.4 no-mmu will be more work than
backporting a filesystem, but I could be mistaken.  Moving my project
to a 2.6 kernel (*any* 2.6 kernel) would be much more work than
either.

All other filesystems I care about are in-kernel - NTFS is quite
exceptional in needing FUSE just to get ordinary, stable file access.
(The in-kernel NTFS is regarded as unstable and missing essential
basic features.)

None of this should be taken as any kind of criticism.  I love what
you guys have done.

-- Jamie

--
To: <jamie@...>
Cc: <dwmw2@...>, <hch@...>, <akpm@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Tuesday, April 15, 2008 - 7:33 am

Fuse-2.5 still supported linux-2.4.  Although I have no idea if it
works with no-mmu, maybe it's worth a try.

Backporting ntfs-3g to an older version of fuse shouldn't be a big
problem, as the fuse interface didn't change very much since then.

Miklos
--
To: Miklos Szeredi <miklos@...>
Cc: <dwmw2@...>, <hch@...>, <akpm@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Tuesday, April 15, 2008 - 11:23 am

Thanks for your advice.  I will look into all these possibilities.
Fuse working would be quite useful in many other ways too.

-- Jamie
--
To: Jamie Lokier <jamie@...>
Cc: Miklos Szeredi <miklos@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Wednesday, April 16, 2008 - 9:08 pm

ntfs-3g was reported to work on 2.4 no-mmu kernels six months ago (though 
it had no our QA). Please see http://ntfs-3g.org/support.html#kernel24 and 
search for nommu on fuse-devel for the details.

	Szaka
--
To: Szabolcs Szakacsits <szaka@...>
Cc: Miklos Szeredi <miklos@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Thursday, April 17, 2008 - 2:50 am

Ah, wonderful!  2.4 kernel support has been _added_ to NTFS-3g's
"FUSE-lite" since I last looked!

Nice to see 2.4 kernel support is still an active priority ;-)

Thanks for the info, it's really useful.  I would never have thought
to check for 2.4 support being added back, since an earlier
announcement said it was no longer supported.

(Btw, The NTFS-3g release notes, on it's decision to replace the FUSE
userspace libs (which is what makes it work with 2.4 kernels too),
suggest there may be serious problems in the standard FUSE libs,
especially on small devices.  It doesn't bother me, as I only need
NTFS-3g, not other FUSE capabilities, but perhaps FUSE developers
would like to take a look at those problems.)

Thanks again,
-- Jamie
--
To: <jamie@...>
Cc: <szaka@...>, <miklos@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Thursday, April 17, 2008 - 4:17 am

There were compatibility problems with uClibc, but those have now been
addressed in the standard fuse libs as well.

I actually think fuse-lite is a good thing (as long as someone is
maintining it): it allows dynamically changing projects like ntfs-3g
to distribute and link their own version of libfuse, which contains
the latest features they need.  Not having to wait for these features
to slowly make it into distributions can be a big advantage.

At the same time fuse-lite doesn't need to carry all the source and
binary compatibility cruft that the standard fuse lib needs, so
statically linking it has a relatively small overhead.

Miklos
--
To: Miklos Szeredi <miklos@...>, <dwmw2@...>, <hch@...>, <akpm@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 7:57 am

It's getting a little offtopic, but what keeps you from backporting
the required fuse version?

--
To: Miklos Szeredi <miklos@...>
Cc: <jamie@...>, <hch@...>, <akpm@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 7:05 am

That would be UML :)

But seriously -- wouldn't our time be better spent on improving error
handling in the kernel, rather than taking advantage of the benefits of
microkernel design... but only for those parts which don't matter?

-- 
dwmw2

--
To: <dwmw2@...>
Cc: <miklos@...>, <jamie@...>, <hch@...>, <akpm@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 8:50 am

Sure, but that needs reviewer time, tester time and developer time.

But if people do it for fun, or for having a simple example code to
look at, I have no problem with that :)

Miklos
--
To: Miklos Szeredi <miklos@...>
Cc: <dwmw2@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 3:49 am

Gad.  Why?
--
To: Andrew Morton <akpm@...>
Cc: Miklos Szeredi <miklos@...>, <dwmw2@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 4:11 am

Hi,


Miklos has the wrong end of the stick.  No-one has "moved" ntfs to  
fuse.  And the fuse implementation doesn't outperform the kernel  
implementation in anything at all.  However the kernel one as  
available in the kernel source tree doesn't have many write-features,  
it can only overwrite files, it cannot create/delete files, etc.  So I  
guess if you define "performance" to mean "features" then sure  
ntfsmount/ntfs-3g have more features than the public kernel driver.   
If you define "performance" to mean "speed" then no ntfsmount/ntfs-3g  
can't compare to the kernel except in very limited and meaningless  
benchmarks...

btw. even comparing features, the fuse solutions lag behind in some  
respects, e.g. no-one can "kill -9" the kernel driver leaving a  
corrupt file system on the volume (and under no-one I include the OOM  
killer for example!) and another example is that the fuse solutions  
require large amounts of ram whereas the kernel driver can happily  
function in 1MiB ram and less even as everything is in the page cache  
so it will just cause heavy paging whilst the fuse solutions just blow  
up / OOM the machine when they find a large directory and the user has  
only 32MiB ram for example...  At least I have seen reports of this on  
the mailing lists, not that I have ever cared to try.

Best regards,

	Anton
-- 
Anton Altaparmakov &lt;aia21 at cam.ac.uk&gt; (replace at with @)
Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK
Linux NTFS maintainer, http://www.linux-ntfs.org/

--
To: <aia21@...>
Cc: <akpm@...>, <miklos@...>, <dwmw2@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 4:26 am

OK, I was exaggerating (notice the smiley).  But I do have a feeling
(and just a feeling, no hard data), that ntfs-3g is making the
in-kernel ntfs filesystem increasingly irrelevant.  And yes, that's
mostly because of the features, but also because the performance is
not at all as bad, as some people would think a userspace filesystem
has to be.

Miklos
--
To: <akpm@...>
Cc: <miklos@...>, <dwmw2@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 4:11 am

I think mostly because of dedication of the maintainer (Szabolcs
Szakacsits).  I don't claim fuse has a great part in it, except the
obvious advantages of developing in userspace: no kernel crashes,
easier debugging, etc...

And of course it could be ported back to the kernel (ntfs-3g is GPL
too), and that would probably result in even more speedups.  But
that's not a trivial task either.

Miklos
--
To: David Woodhouse <dwmw2@...>
Cc: Miklos Szeredi <miklos@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Sunday, April 13, 2008 - 6:44 pm

I guess I can keep making this point in various ways until someone
actually notices it:

	This filesystem has only 20 users.


--
To: Andrew Morton <akpm@...>
Cc: David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Sunday, April 13, 2008 - 6:49 pm

At the moment. And that probably exceeds Amiga users, 386 users, some of
the serial port users, several network card users ...

In the past we've merged drivers for network cards where only two
existed in the world. Linus has repeatedly stated he wants to see stuff
people are using getting in. Good clean code that doesn't affect the core
is good reference material.

I think you are (unusually) the one out of step here ?

Alan



--
To: Alan Cox <alan@...>
Cc: David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Sunday, April 13, 2008 - 7:10 pm

The reference block filesystem is ext2 (used to be minixfs) - there is no

I appear to be the only one who is looking at the whole picture.

Merging a new filesystem has costs - I don't need to enumerate them.  Do
the benefits of OMFS exceed them?
--
To: Andrew Morton <akpm@...>
Cc: Alan Cox <alan@...>, David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Tuesday, April 15, 2008 - 11:16 am

We do not have a stable API for external modules, and part of the deal 
is that external modules have the chance of entering the kernel where 
they will get API changes automatically.

We are talking about a filesystem even Christoph considers OK.

And who asked about the costs of merging crap like 
drivers/infiniband/hw/nes/ ?

Speaking about the latter, with Linus' logic one might argue that OMFS 
must not be rejected since it adds support for some hardware...

cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed

--
To: Adrian Bunk <bunk@...>
Cc: Andrew Morton <akpm@...>, Alan Cox <alan@...>, David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Tuesday, April 15, 2008 - 12:57 pm

Excatly.  I find it very strange to even consider rejecting a rather
small and very well written driver for let's say "political" reasons.
--
To: Christoph Hellwig <hch@...>
Cc: Adrian Bunk <bunk@...>, Alan Cox <alan@...>, David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Tuesday, April 15, 2008 - 2:34 pm

"economic" would be a far more accurate term.

Look, I have repeatedly described the reason why it is probable a poor
tradeoff to merge code such as this.  The only response has been "well
we've done it before", which is largely a non-reason.

You can continue to ignore my logic, but that won't go unnoticed.

Just as a thought exercise: should we merge a small and well-written
driver which has zero users?
--
To: Andrew Morton <akpm@...>
Cc: Christoph Hellwig <hch@...>, Alan Cox <alan@...>, David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Tuesday, April 15, 2008 - 3:24 pm

It seems you missed the first point in my email:

We do not have a stable API for external modules, and part of the deal 
is that external modules have the chance of entering the kernel where 
they will get API changes automatically.


Plus my other point that one might argue that OMFS adds support for some 
hardware in which case a recent commandment by Linus would require it 
has to be merged...


cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed

--
To: Adrian Bunk <bunk@...>
Cc: <hch@...>, <alan@...>, <dwmw2@...>, <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Tuesday, April 15, 2008 - 4:11 pm

On Tue, 15 Apr 2008 22:24:32 +0300

That's lawyerly trickery, sorry.  Take some set of guidelines and then say
"you are thereby committed to doing X".

We're not committed to doing anything and it would be bad if we were. 
Let's apply common sense and judgement to each case on its own.

--
To: Andrew Morton <akpm@...>
Cc: <hch@...>, <alan@...>, <dwmw2@...>, <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Tuesday, April 15, 2008 - 4:27 pm

My favorite gems from the stuff even checkpatch finds in the 
INFINIBAND_NES driver, for which Linus has stated explicitely that 
merging it in this state in 2.6.25 was correct, can be seen with

  grep -C4 volatile drivers/infiniband/hw/nes/nes_nic.c


When we have the resources to maintain this kind of code, how could a 
small filesystem be a problem?


cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed

--
To: Andrew Morton <akpm@...>
Cc: Christoph Hellwig <hch@...>, Adrian Bunk <bunk@...>, David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Tuesday, April 15, 2008 - 2:53 pm

We've previously merged ones that fit this category and have one user. If
the driver doesn't disrupt core code and is useful to help other people
write drivers then I think we should. It may also get more users as a
result.

This is a free software project not a business enterprise.

Alan

--
To: Alan Cox <alan@...>
Cc: <hch@...>, <bunk@...>, <dwmw2@...>, <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Tuesday, April 15, 2008 - 4:02 pm

On Tue, 15 Apr 2008 19:53:30 +0100



And the same principles apply, don't they?  We seek to minimise overhead
and to use our kernel development hours as effectively as we can.

This is particularly important when person A is thrusting additional work
onto persons B, C, and D.

--
To: Andrew Morton <akpm@...>
Cc: <hch@...>, <bunk@...>, <dwmw2@...>, <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Tuesday, April 15, 2008 - 3:58 pm

I would disagree as drivers we've merged like that go on to have many
users or give us new developers who stay with the project (and in some

One word if we are getting into the economics of this: Externalities.
There are lots of benefits from merging the code beyond simple value of
code merge including more developers, more reference code, more users.
The ratio of new contributions to maintenance is a different problem and
one I do not think should be conflated with it.

But yes I do think they are different - free software is largely done for
fun, by people who want to contribute. What was it John Betjeman said of
another large volunteer project:

"the result of the independent spirit which still survives in this
country and refuses to be crushed by the money-worshippers, centralizers
and the unimaginative theorists who are doing their best to kill it"

Alan
--
To: Alan Cox <alan@...>
Cc: Andrew Morton <akpm@...>, <hch@...>, <bunk@...>, <dwmw2@...>, <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Tuesday, April 15, 2008 - 5:46 pm

On Tue, 15 Apr 2008, Alan Cox wrote:

	to interject, and in response to a variety of posts in this thread 
and in no way drawing solely on yours, alan: despite that it may sound 
like some interesting viewpoints are getting aired here, i think the 
discussion may've unproductively slewed to a point where andrew's 
unfortunately been painted into a corner in which he has little practical 
interest.

	it seems like some folks have misinterpreted andrew's remarks as 
being variously inflexible, elitist, "political", pro-"corporate-drone", 
working at cross-purposes to the spirit of open source, and otherwise.  
in rereading the thread, though, he's pretty much been the most 
even-handed, moderate, practical, and open to discussion and compromise of 
anyone involved.

	he gave an opinion about the merits of OMFS in-kernel vs FUSE, 
clarified his stance, remained open to other's comments and criticism, 
didn't rise to any bait when people called his ideas "stupid" and whatnot 
(despite that he specifically said he had "no strong opinions either 
way"), and he compromised: he offered to pull the code into -mm; he said 
he'd merge v4.

	known: OMFS has a few bugs (thanks, reviewers), needs testing, and 
has outstanding legal questions to resolve.  andrew offered to merge the 
next version.

	to ground the topic in terms of practicality: what else would all 
of you have andrew do, at this moment, that he hasn't already done?  can 
we let him get back to work?


	thanks,

	d
	.
--
To: Andrew Morton <akpm@...>
Cc: Alan Cox <alan@...>, David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 4:30 am

Eh you, corporate linux developer, please don't discriminate what's
going in the kernel just because of extra cost. Let linux continue to be
"by the people, for the people" if you see what I mean.


--
To: Xavier Bestel <xavier.bestel@...>
Cc: Alan Cox <alan@...>, David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 4:44 am

By "cost" I refer to extra developer time spent on maintaining the
filesystem.  The most recent example is the write_begin/write_end changes
which took a lot of Nick's time and rather a lot of mine also.


"the people" here are those who work on the kernel.  We want our time to be
spent as effectively as possible.  Sorry if that sounds corporate.
--
To: Andrew Morton <akpm@...>
Cc: Xavier Bestel <xavier.bestel@...>, Alan Cox <alan@...>, David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 5:09 am

My time is definitively spent better on reviewig and if needed fixing a
fun filesystem like omfs that allows linux to deal with fun hardware
instead of fighting the lastet crap code from the corporate drones.
--
To: Christoph Hellwig <hch@...>
Cc: Xavier Bestel <xavier.bestel@...>, Alan Cox <alan@...>, David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 5:21 am

That's about the fourth time you've made this assertion.  It is pointless,
it is of no use to anyone and it is unjustly insulting to a large number of
kernel developers.  Many of whom do a hell of a lot more kernel work than
you, I might add.

If you have issues with certain parts of the kernel code then tell us, with
a usable level of detail what they are.  Preferably as a reply-to-all prior
to that code being merged, but after merging is fine too.

Otherwise...
--
To: Andrew Morton <akpm@...>
Cc: Christoph Hellwig <hch@...>, Xavier Bestel <xavier.bestel@...>, Alan Cox <alan@...>, Miklos Szeredi <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 6:09 am

No, it isn't. Christoph can be insulting sometimes, but that wasn't it.

Anyone who thinks that Christoph was referring to them obviously
identifies _themselves_ as 'corporate drone who posts crap code'.
Why is it insulting for Christoph to opine that his time is better spent
on reviewing something fun?

I find it extremely annoying when people claim offence on behalf of
unspecified third parties, when no real adult actually _is_ so wet as to

As if Christoph needs encouragement to do just that... :)

-- 
dwmw2

--
To: David Woodhouse <dwmw2@...>
Cc: Christoph Hellwig <hch@...>, Xavier Bestel <xavier.bestel@...>, Alan Cox <alan@...>, Miklos Szeredi <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 6:22 am

Not so.  There is a habit of treating corporate developers as somehow
inferior to the purer old-timers.  I know - people have told me.  Quite
often.  And for various reasons, those people feel limited in their options
for standing up for themselves.

--
To: Andrew Morton <akpm@...>
Cc: David Woodhouse <dwmw2@...>, Christoph Hellwig <hch@...>, Xavier Bestel <xavier.bestel@...>, Alan Cox <alan@...>, Miklos Szeredi <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 7:16 am

Corporate drones obviously doesn't refer to all of them.  It referes to
those who are primarily corporate and secondarily Linux people of
course.  There's quite a lot of developers who came to Linux with a
corporate background and are fully integrated into the "scene".
Surprising they tend to write mostly good code and are involved with
review and other important activities.
--
To: Andrew Morton <akpm@...>
Cc: Christoph Hellwig <hch@...>, Xavier Bestel <xavier.bestel@...>, Alan Cox <alan@...>, Miklos Szeredi <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 6:36 am

I'm not sure I agree. There is a habit of treating people who post crap
code as somehow inferior to the purer old-timers, certainly. And that's
probably not such a good thing, but at least it helps to keep the
signal:noise ratio down a little, overall.

But except to the extent that there is a correlation between 'corporate
developers' and 'people who post crap code', I wouldn't agree with your
statement above. 

We have a lot of people working for large corporations who don't post
crap code, and to whom Christoph almost never promotes an attitude of
violence. Looking at Jon's 'who wrote 2.6.23' analysis, I see quite a

Anyone trying to defend crap code _should_ be limited in their options,
surely? And sometimes, 'corporate developers' do try to defend crap
code, because they've made traditional corporate mistakes like
developing it all in private and presenting it as a fait accomplis
without proper a priori review, and/or haven't budgeted for the
necessary time to fix it.

-- 
dwmw2

--
To: Andrew Morton <akpm@...>
Cc: Xavier Bestel <xavier.bestel@...>, Alan Cox <alan@...>, David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 5:08 am

Which are only an extra cost for complex filesystem.  Trivial block
filesystems like omfs just use the generic callbacks and can be
converted in a simple sweep.

--
To: Xavier Bestel <xavier.bestel@...>
Cc: Andrew Morton <akpm@...>, Alan Cox <alan@...>, David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 4:43 am

Seconded (as a 95% non-coporate kernel hacker :))

--
To: Andrew Morton <akpm@...>
Cc: David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 4:16 am

I think the exceed them quite easily. The costs are almost nil, while
merging this provides another nice example fs (and one much easier to
follow than ext*) for hardware that does have a few users and will no
doubt get many more

I wasn't aware Linus had introduced a new rule required 500 people sign
up to use a feature before it gets added ?

Alan
--
To: Alan Cox <alan@...>
Cc: Andrew Morton <akpm@...>, David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <hch@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 4:41 am

I'm also very surprised by this, especially as it seems to be applied
very selectively.  This filesystems is an almost 0 maintainance burden
unlike a lot of really crappy driver we're shoving in constantly.
--
To: Christoph Hellwig <hch@...>
Cc: Alan Cox <alan@...>, Andrew Morton <akpm@...>, David Woodhouse <dwmw2@...>, Miklos Szeredi <miklos@...>, <me@...>, <linux-kernel@...>, <linux-fsdevel@...>
Date: Monday, April 14, 2008 - 4:55 pm