![nand x read bad block 258 nand x read bad block 258](https://m.media-amazon.com/images/I/61zZ5pxcdgL._AC_SL1200_.jpg)
![nand x read bad block 258 nand x read bad block 258](https://m.media-amazon.com/images/I/71cfvMWLJES._AC_SL1500_.jpg)
Is it right? In our case we never erase or write them again, just read them on a reboot so we do not understand how they can be marked as bad.The present disclosure pertains generally to operation of memory devices, and more specifically to mitigating grown bad blocks in non-volatile memory devices. Does it make sense? We are asking because we read on Micron documentation that bad blocks are marked only on erase and write operations, but we assume that they are also marked as bad when reading them if there are too many bitflips to correct the errors. Now, a very wild guess: is it possible that reading these partitions periodically from a live system (using nanddump, for example) could improve their health the reasoning here is as follow: reading it with nanddump would detect (and correct?) bitflips, preventing them to accumulate over time. We also have some questions about how we can make the system more reliable: is it a good idea to duplicate the kernel, dtb and initramfs partitions and detect in some way a failure in u-boot, so that a second copy can be loaded if the first fails? To flash partitions we erase them with flash_erase /dev/mtdX and then write them using nandwrite (or kobs-ng for u-boot). How can it be that, sometimes, the same system is then able to boot again (without any intervention)?Īnother strange thing we notice is that re-flashing only the u-boot (and nothing else) have made the bad block on the initramfs partition disappear.