AnsweredAssumed Answered

MFS file system corrruption

Question asked by Brent Williams on Nov 21, 2013
Latest reply on Nov 18, 2014 by pbanta

Hello I am using a Kinetis K20 part on a custom board.  I am testing a file system (MFS) and I notice that the following test works most of the time, but occasionally I see corruption. The test is simple.  I write 50 files to flash and do a ls.  The results are below.  Has anyone seen something similar?

 

In a good case I see the following:

 

ls

FOO1.XML 15001 01-31-1980 01:05:44      A FOO1.XML

FOO2.XML 15001 01-31-1980 01:05:48      A FOO2.XML

FOO3.XML 15001 01-31-1980 01:05:52      A FOO3.XML

FOO4.XML 15001 01-31-1980 01:05:54      A FOO4.XML

FOO5.XML 15001 01-31-1980 01:05:58      A FOO5.XML

FOO6.XML 15001 01-31-1980 01:06:00      A FOO6.XML

FOO7.XML 15001 01-31-1980 01:06:04      A FOO7.XML

FOO8.XML 15001 01-31-1980 01:06:08      A FOO8.XML

FOO9.XML 15001 01-31-1980 01:06:10      A FOO9.XML

FOO10.XML 15001 01-31-1980 01:06:14      A FOO10.XML

FOO11.XML 15001 01-31-1980 01:06:18      A FOO11.XML

FOO12.XML 15001 01-31-1980 01:06:20      A FOO12.XML

FOO13.XML 15001 01-31-1980 01:06:24      A FOO13.XML

FOO14.XML 15001 01-31-1980 01:06:28      A FOO14.XML

FOO15.XML 15001 01-31-1980 01:06:36      A FOO15.XML

FOO16.XML 15001 01-31-1980 01:06:40      A FOO16.XML

FOO17.XML 15001 01-31-1980 01:06:42      A FOO17.XML

FOO18.XML 15001 01-31-1980 01:06:46      A FOO18.XML

FOO19.XML 15001 01-31-1980 01:06:50      A FOO19.XML

FOO20.XML 15001 01-31-1980 01:06:52      A FOO20.XML

FOO21.XML 15001 01-31-1980 01:06:56      A FOO21.XML

FOO22.XML 15001 01-31-1980 01:07:00      A FOO22.XML

FOO23.XML 15001 01-31-1980 01:07:04      A FOO23.XML

FOO24.XML 15001 01-31-1980 01:07:06      A FOO24.XML

FOO25.XML 15001 01-31-1980 01:07:10      A FOO25.XML

FOO26.XML 15001 01-31-1980 01:07:12      A FOO26.XML

FOO27.XML 15001 01-31-1980 01:07:16      A FOO27.XML

FOO28.XML 15001 01-31-1980 01:07:20      A FOO28.XML

FOO29.XML 15001 01-31-1980 01:07:22      A FOO29.XML

FOO30.XML 15001 01-31-1980 01:07:26      A FOO30.XML

FOO31.XML 15001 01-31-1980 01:07:30      A FOO31.XML

FOO32.XML 15001 01-31-1980 01:07:34      A FOO32.XML

FOO33.XML 15001 01-31-1980 01:07:36      A FOO33.XML

FOO34.XML 15001 01-31-1980 01:07:40      A FOO34.XML

FOO35.XML 15001 01-31-1980 01:07:44      A FOO35.XML

FOO36.XML 15001 01-31-1980 01:07:46      A FOO36.XML

FOO37.XML 15001 01-31-1980 01:07:50      A FOO37.XML

FOO38.XML 15001 01-31-1980 01:07:54      A FOO38.XML

FOO39.XML 15001 01-31-1980 01:07:56      A FOO39.XML

FOO40.XML 15001 01-31-1980 01:08:00      A FOO40.XML

FOO41.XML 15001 01-31-1980 01:08:04      A FOO41.XML

FOO42.XML 15001 01-31-1980 01:08:06      A FOO42.XML

FOO43.XML 15001 01-31-1980 01:08:10      A FOO43.XML

FOO44.XML 15001 01-31-1980 01:08:14      A FOO44.XML

FOO45.XML 15001 01-31-1980 01:08:16      A FOO45.XML

FOO46.XML 15001 01-31-1980 01:08:20      A FOO46.XML

FOO47.XML 15001 01-31-1980 01:08:24      A FOO47.XML

FOO48.XML 15001 01-31-1980 01:08:28      A FOO48.XML

FOO49.XML 15001 01-31-1980 01:08:30      A FOO49.XML

FOO50.XML 15001 01-31-1980 01:08:34      A FOO50.XML

 

In a bad case I am seeing:

ls

FOO1.XML 15001 01-31-1980 00:33:28      A FOO1.XML

FOO2.XML 15001 01-31-1980 00:33:32      A FOO2.XML

FOO3.XML 15001 01-31-1980 00:33:34      A FOO3.XML

FOO4.XML 15001 01-31-1980 00:33:38      A FOO4.XML

FOO5.XML 15001 01-31-1980 00:33:42      A FOO5.XML

FOO6.XML 15001 01-31-1980 00:33:44      A FOO6.XML

FOO7.XML 15001 01-31-1980 00:33:48      A FOO7.XML

FOO8.XML 15001 01-31-1980 00:33:52      A FOO8.XML

FOO9.XML 15001 01-31-1980 00:33:54      A FOO9.XML

FOO10.XML 15001 01-31-1980 00:33:58      A FOO10.XML

FOO11.XML 15001 01-31-1980 00:34:02      A FOO11.XML

FOO12.XML 15001 01-31-1980 00:34:08      A FOO12.XML

FOO13.XML 15001 01-31-1980 00:34:10      A FOO13.XML

FOO14.XML 15001 01-31-1980 00:34:14      A FOO14.XML

FOO15.XML 15001 01-31-1980 00:34:18      A FOO15.XML

FOO16.XML 15001 01-31-1980 00:34:20      A FOO16.XML

FOO17.XML 15001 01-31-1980 00:34:24      A FOO17.XML

FOO18.XML 15001 01-31-1980 00:34:28      A FOO18.XML

FOO19.XML 15001 01-31-1980 00:34:30      A FOO19.XML

FOO20.XML 15001 01-31-1980 00:34:34      A FOO20.XML

FOO21.XML 15001 01-31-1980 00:34:38      A FOO21.XML

FOO22.XML 15001 01-31-1980 00:34:40      A FOO22.XML

FOO23.XML 15001 01-31-1980 00:34:44      A FOO23.XML

FOO24.XML 15001 01-31-1980 00:34:48      A FOO24.XML

FOO25.XML 15001 01-31-1980 00:34:50      A FOO25.XML

FOO26.XML 15001 01-31-1980 00:34:54      A FOO26.XML

FOO27.XML 15001 01-31-1980 00:34:58      A FOO27.XML

FOO28.XML 15001 01-31-1980 00:35:04      A FOO28.XML

FOO29.XML 15001 01-31-1980 00:35:08      A FOO29.XML

FOO30.XML 15001 01-31-1980 00:35:10      A FOO30.XML

FOO31.XML 15001 01-31-1980 00:35:14      A FOO31.XML

FOO32.XML 15001 01-31-1980 00:35:18      A FOO32.XML

FOO33.XML    4294967295 15-31-2107 31:63:62      A FOO33.XML

FOO42.XML 15001 01-31-1980 00:35:50      A FOO42.XML

FOO43.XML 15001 01-31-1980 00:35:56      A FOO43.XML

FOO44.XML 15001 01-31-1980 00:36:00      A FOO44.XML

FOO45.XML 15001 01-31-1980 00:36:04      A FOO45.XML

FOO46.XML 15001 01-31-1980 00:36:08      A FOO46.XML

FOO47.XML 15001 01-31-1980 00:36:10      A FOO47.XML

FOO48.XML 15001 01-31-1980 00:36:14      A FOO48.XML

FOO49.XML 15001 01-31-1980 00:36:18      A FOO49.XML

FOO50.XML 15001 01-31-1980 00:36:20      A FOO50.XML

 

I monitor the physical address I am writing to and output to a terminal window.  In both of these cases the last physical address it is writing to is the same.

 

So I believe it is getting into the flash.

 

Thanks,

 

Brent

Outcomes