-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Rong Shen wrote: >> This would miss certain classes of error - such as charge leakage (e.g. >> the cells will erase or set themselves over a day/week/month/year). >> >> http://lists.openmoko.org/pipermail/community/2007-July/008471.html So, from what I understand of this message, the BBT is first generated by a capable bootloader (which the RouterBOARD doesn't have) out of the factory and then regenerated when necessary by Linux when errors are detected? Neat... > You are probably right on this, but no one can guarantee a good block > will never turn to bad block, even most of manufactures would say in > their datasheet that bad blocks may develop later on. So if there's no > 100 percent reliable way to detect bad blocks, why don't we try the > above process, which can at least detect non-intermittent errors. Isn't this how the scanner in the Linux kernel works anyway? From the code... /* Compare the pattern */ for (i = 0; i < td->len; i++) { if (p[td->offs + i] != td->pattern[i]) return -1; } return 0; and this is simply run at boot time. I don't see the harm in implementing something similar to that in a memtest86 fashion. Or am I missing something here? With regard to the 'uncorrectable errors', is there still a chance that there's a driver problem if the ECC layout allows the filesystem to be mounted correctly? (That said - mtdblock0 contains an ELF image of a Linux kernel, not a filesystem, and mtdblock1 contains the Yaffs filesystem itself. I'm not sure this matters though...) I'll try to search around and see if I can force those blocks to be reprobed or so. Anyway, thanks for the tips! Since the device is non-critical, I'm considering just wiping it and dealing with the consequences if they pop up. I'll have a look at the Hynix docs before doing so just to make sure, as suggested. Regards, Noah - -- Noah Fontes Cynigram http://www.cynigram.com/ Phone: +1 919 349 9826 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) iEYEARECAAYFAkofcUMACgkQhitK+HuUQJQlLwCff8fHsNr81ADVf9kJEV5dW98O u74An0LEILQIpgFBI+EjTou4j5Dri9aL =vDkI -----END PGP SIGNATURE-----