[clug] Kernel without initramfs

Daniel Pittman daniel at rimspace.net
Thu Mar 26 23:14:56 GMT 2009


David Tulloh <david at tulloh.id.au> writes:
> Daniel Pittman wrote:
>> Robert Edwards <bob at cs.anu.edu.au> writes:
>>
>>> I notice in one of your earlier posts that you may be using ext3 on
>>> your CF device. May I suggest that it is a bad idea to use ext3 in
>>> particular and most other journalling FS's in general on a
>>> "flash"-based device?
>>
>> You can suggest that, but you would be wrong, since one of your
>> underlying assumptions is incorrect.
>>
>>> For the writable parts work out if you can afford to write to a
>>> RAM-base FS and then copy important data back to non-volatile
>>> storage. Logging etc., if possible, should be to an external logging
>>> server.
>>
>> That is generally good advice.
>>
>> Anyway, to the specifics of your suggestion: the reason that ext3 is no
>> more likely to cause a CF card trouble than any other filesystem is
>> simple, and that is that the CF card performs wear levelling internally.
>>
>> JFFS is designed for direct access to the flash hardware, in which there
>> is no hardware wear levelling, so it is essential to balance writes.
>>
> Regardless of if the write leveling is performed in software or
> hardware you will get more wear if you do more writes.

Absolutely.

> Hammering away with journaling information is going to create a
> fantastic number of writes.

I think you are exaggerating the write amplification factor here, but it
naturally depends on your workload and filesystem.


> 100,000 cycles isn't that many if you want the product to last eight
> years, less if you factor in that a chip wears unevenly as it get
> full.

So, if you were specifying the storage for a device to live that long
and you bought one of the 100K chips rather than, say, the million
chips, your employer might justifiably be unhappy with you, eh?


More seriously, journalling itself isn't bad; it is just something to
take into account when you spec the parts based on your application.

> My personal experience has also been that sectors wear out before the
> quoted minimum number of cycles.

Well, I don't doubt your experience, but I also have no idea what this
signifies in the grand scheme of things, as I don't what sort of numbers
of devices or range of manufacturers we are talking about.

I would be interested to know what absolute, and percentage, numbers of
CF cards you had fail early, and which vendors they were from...


> Most embedded systems I have used to go to considerable effort to have
> a read-only file system and extensively use tmpfs.  Actual writes are
> rare and controlled, development is done over a NFS mount.  Though
> most of the devices I have used don't bother with wear leveling, they
> tend to save configuration information and not much else.

That is sensible.  How does that relate to ext3 vs JFFS vs other file
systems in this case?

My guess is that you mention it to emphasise the "avoid writes",
together with your claim that ext3 journalling causes a "fantastic"
number of writes, correct?

Regards,
        Daniel


More information about the linux mailing list