Subject: RE: JFS
To: None <kyle.unice@L-3com.com>
From: Brian Chase <vaxzilla@jarai.org>
List: tech-kern
Date: 02/20/2003 12:03:31
On Thu, 20 Feb 2003 kyle.unice@L-3com.com wrote:

> The points I meant to make are:
>
> 1. embedded systems need to be able to save data that is non-volatile
>    gathered at run-time.
> 2. A standard file system is an easy interface to save such data
> 3. This standard file system needs to have a slightly different behavior
>    when using flash as a storage medium (fewer writes, compression,
>    etc.)
> 4. JFFS fits part of these requirements
> 5. NetBSD doesn't have flash block device support (at least in 1.6) now.
> 6. Embedded systems sometimes go down "uncleanly" making a more fault
>    tolerant FS a better option.  JFFS being a "log-based" file system
>    is more fault tolerant.
> 7. JFFS would be a good start at supporting flash better in NetBSD.

I think the main disagreement would be with your statement of embedded
systems /needing/ filesystem compression, and the implication that a
journalled filesystem is also needed.  There are certainly alternative
approaches which can satisfy those requirements.

Having said that, I do think the alternatives require jumping through
some hoops in the cases where non-volatile data, or configurations, must
be retained.  I'm sure there are some subset of embedded systems needs
where a journalled filesystem would be a more elegant, or more
appropriate, way to implement non-volatile data storage requirements.
Still, it's doubtful that embedded systems will be the driving force
behind whether a journalled filesystem should be included in NetBSD.

Personally, I'd love for us to support both IBM's JFS and SGI's
XFS--just because I've had excellent experiences using both under AIX
and IRIX respectively. But unless there's someone with the interest or
need, and the means to implement either, it won't be done.  That's the
reality of the situation.

The things that /are/ present in NetBSD should be treated as gifts.
If you can't work within the system, change it; if you don't have the
ability to change it, then convince someone else to change it; if you
don't have the means to convince someone--either with money, equipment,
or persuasive arguments--then you should turn to an alternative system
which better meets your needs.

Getting back to filesystems, if someone were to "adapt" the existing
Linux JFS and XFS implementations to NetBSD, would it be necessary to
have them under BSD licensing, or are there technical workarounds to
bypass contaminating the kernel with the GPL (i.e. support the
filesystems with loadable modules)?  And maybe more importantly, would
such an alternative be desirable even if it were feasible?

-brian.