On an embedded system I have, using a 44 pin transcend industrial flash, after a while I will notice that I cannot read any files or write to the disk. I am using the 3.2.0.* BPO i686 SMP PAE kernel. This is sometimes accompanied by a freeze on the backport's kernel, but it always caused a complete system freeze on the default Debian 6 kernel. When I try to reboot at this point, it always freezes, if I cycle power (something that is normally fine since this is a read-only root system) I usually get a stuck boot on fsck complaining that one of the writable partitions was not cleanly unmounted. fsck /dev/... -y always fixes it.
When I noticed this, I altered our main application to only read from the ide at startup and to only write to the configuration files when the client calls a WriteConfigurationToDisk function. This drastically improved matters, however, after a while the same thing begins to happen. This does not seem to happen universally, just on about 10% of the product.
This is a read-only root system. Each partition is a journaled ext3 file system. Also, only the operating system is writing anything to the disk--and most of that is at boot up. Any ideas on what I should check?
Update I have been doing some more research and it seems that ext3 maybe murdering my flash drive, hence the frozen read/writes are a result of a bad flash. Should I maybe switch to JFSS2?