JFFS3 & performance

Thomas Gleixner tglx at linutronix.de
Wed Jan 12 13:27:59 EST 2005


On Wed, 2005-01-12 at 19:10 +0100, Jörn Engel wrote:

> Ok, let me distinguish between the different problems:
>   Soft errors
>
> In other words, one out of 1000 flashes will have a non-recoverable
> error sometime during it's life cycle.  Doesn't exactly make me happy,
> but it's not horrible either.  In cases where little data is written
> to flash or other components (cpu, power regulators) die before the
> flash does, this is even less of an issue.
>
> What does that mean for this discussion?  On Toshiba's NAND flashes,
> according to their claims, jffs2 checksums won't catch any errors that
> wouldn't already be caught either by ECC or during write/erase.
> 
> Am I wrong?

No, using Reed-Solomon codes with an hardware decoder/encoder can
improve this significantly (3 - 12 bits depending on the
implementation), so your error propabilty is going near 0.
Hardware encoders/decoders are easy to build into FPGA/CPLD. There are
public VHDL sources available. The speed advantage over sofwtare ECC is
significant.

Missing error

There is another type of error, which came up lately with AND FLASH. If
you leave a block untouched in a range of blocks and erase/program the
surrounding blocks, then the untouched block is likely to have bitflips.
GC likeliness to GC clean blocks from time to time will cover this, but
if you have a big number of clean blocks you might get into trouble.

A strong argument for using seperate partitions for static and dynamic
data.

tglx






More information about the linux-mtd mailing list