Subject: Re: RFC: community requirements for a flash filesystem
To: None <tech-kern@netbsd.org>
From: Garrett D'Amore <garrett_damore@tadpole.com>
List: tech-kern
Date: 03/19/2006 17:46:43
David Young wrote:
> I am seeking the NetBSD community's requirements and recommendations
> for a flash filesystem that is suitable for embedded systems.
>
> To start, let me state some bare minimum requirements:
>
>         * Survives abrupt power loss: data in buffers may be lost,
>           but the filesystem is consistent following power loss---no
>           fsck is required.
>
>         * Wear-levelling: on flash parts that require it, avoids R/M/W on
>           "chunks" smaller than the media's sector size, avoids
>           concentrating writes on a few physical sectors, "retires"
>           worn-out sectors.  Avoids counteracting wear-levelling by
>           firmware/hardware on parts that provide it (e.g., CompactFlash),
>           as a run-time option.
>
>         * Supports "typical" embedded uses: loading programs,
>           (re-)writing configuration files, writing logs.  Temporary files
>           are expected to be on a tmpfs.
>
> Is either FFS or LFS a foundation to build a flash filesystem on, or
> should NetBSD build its flash filesystem from scratch?  Help me get a
> sense of the community on the question.
>
> Can a flash filesystem that meets the needs of 99% of embedded
> applications, also satisfy 95% of NetBSD server applications?
>
> How many developer-months away is a usable flash filesystem for NetBSD?
>
> Dave
>
>   

Add to this:

* ideally, supports uniform sector sizes *and* boot sectored flash parts
* detects (maybe from lower flash device) and handles various sector sizes
* deals gracefully with read-only flash devices
* ideally, is compatible on-device with filesystems understood by common
bootloaders like redboot. (getting redboot support is probably the most
important).

-- 
Garrett D'Amore, Principal Software Engineer
Tadpole Computer / Computing Technologies Division,
General Dynamics C4 Systems
http://www.tadpolecomputer.com/
Phone: 951 325-2134  Fax: 951 325-2191