[ECOS] JFFS2 Access and interrupts
Thu Sep 14 15:15:00 GMT 2006
>>>>> "Gernot" == Gernot Zankl <email@example.com> writes:
>> > FYI I finally found the/our bug, causing the application to
>> > corrupt the jffs2. We just used the wrong block size in
>> > the configuration of the underlying flash driver, causing to
>> > erase too much flash memory (and destroying still active inodes).
>> FAOD - it had *nothing* to do with interrupts during FLASH operations?
Gernot> At least not in "our" version of the flash driver (v1)
Gernot> which has been provided and modified by Analogue&Micro,
Gernot> where all calls to the critical functions are guarded by
Gernot> the HAL_DISABLE_INTERRUPTS and HAL_RESTORES_INTERRUPTS
Of course that approach gives you an interrupt latency of somewhere
from several 100 milliseconds up to 5 seconds, depending on the exact
flash hardware and the environmental conditions. That is the time
needed to erase a whole flash sector. So any time you perform jffs2
file I/O your application may become completely unresponsive to all
external events for a number of seconds. It depends on the application
whether or not such behaviour is acceptable.
Bart Veer eCos Configuration Architect
http://www.ecoscentric.com/ The eCos and RedBoot experts
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
More information about the Ecos-discuss