Hello,
the latest version of Texas Instruments' fork of the linux kernel (from git://arago-project.org/git/projects/linux-omap3.git, branch ti81xx-master) is killing my NAND flash.
We've reproduced this behavior both with the current ti81xx-master branches' HEAD (commit 52752d53adda8c345650c5c7000856cffc638208) as well as with the source tagged with v2.6.37_TI814XPSP_04.01.00.07.
The symptoms: We're relying on UBI and UBIFS and after incorporating the latest GIT patches UBIFS keeps reporting bad NAND blocks. At every reboot new bad blocks were reported by UBI; often these blocks have just been erased, so they really should not be broken. A lot of blocks have been marked bad this way.
We tried with multiple factory-new NAND flash chips - all had an increasing number of bad blocks reported after every boot - so the NAND is most likely not broken.
The behavior went away after we rolled back to an old version (commit 3228b1d8e5270ee56002e7f59d839ed8b6b85606) which does not have this problem (but unfortunately lacks of BCH8 support).
Here's a snapshot of UBI reporting bad blocks:
[ 6.350000] UBI error: ubi_io_read: error -74 (ECC error) while reading 131072 bytes from PEB 525:0, read 131s
[ 6.370000] UBI error: torture_peb: read problems on freshly erased PEB 525, must be bad
[ 6.370000] UBI error: erase_worker: failed to erase PEB 525, error -5
[ 6.680000] UBI error: ubi_io_read: error -74 (ECC error) while reading 126976 bytes from PEB 13:4096, read 1s
[ 6.840000] UBI error: ubi_io_read: error -74 (ECC error) while reading 131072 bytes from PEB 523:0, read 131s
[ 6.850000] UBI error: torture_peb: read problems on freshly erased PEB 523, must be bad
[ 6.860000] UBI error: erase_worker: failed to erase PEB 523, error -5
Block addresses (and PEB values) vary of course, since new blocks are reported broken after every boot.