I have implemented a dos file system (msdos_*) on a flash device.

 

Because it is possible for the user to power down the system unexpectedly, I
want to sync the file system to the flash device after a 3 second idle time.
How do I externally force a sync on msdos from another thread?

 

A related problem is that I use FTP (ftpd.c) to externally read/write files on
the msdos formatted flash.  I have the idle timeout set to 3 minutes for the FTP
connection.  After 3 minutes, ftpd issues a chdir("/") which eventually calls
msdos_free_node_info() that calls fat_file_close() and may try to write out data
to the flash.  This is a problem because if the power is turned off at that time
the flash is corrupted.

 

So whatever method I use to sync msdos needs to update and write out the fat so
that the subsequent msdos_free_node_info() does nothing.

 

Thanks for any advice.

 

Cliff

 

_______________________________________________
users mailing list
users@rtems.org
http://lists.rtems.org/mailman/listinfo/users

Reply via email to