I'm using an embedded system on which a 200kB (uncompressed size) jffs2 file-system is used to rfid transactions.
This gives the following problems:
- Estimating the remaining free space does not work (that was expected). This is not very bad but it would be nice to know in advance whether logging a transaction will work.
- When the file-system is full, the write() does not give back an error code! This is bad! I 'solved' this by verifying the file contents by reading it completely. No need to say that costs performance.
- compression does not work properly: the file system is full after a limited (~100-400) amount of writes. This is very bad! Not only does this mean that the number of transactions that can be logged is much to low, but also that it can not be predicted when it will fail!
Does somebody know a way to solve or work around these problems?
E.g. using some configuration parameter for jffs2 or using another file system type?
Note that it should be able to handle flash memory, lots of small writes (~5000 per day) without waring out the flash, and it should be reliable so power outages won't corrupt the file-system.
(and I apologize for my English