<div dir="ltr">Hi Joel,<div><br></div><div style>Yes, I've looked at the debugrfs command. Its implementation pointed me some directions. </div><div style>Now I'm doing my "home work", studying the RFS implementation, in order to better understand the valuable advice from Chris.</div>
<div style><br></div><div style>Thanks</div><div style><br></div><div style>--Wendell.</div><div style><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/11/30 Joel Sherrill <span dir="ltr"><<a href="mailto:joel.sherrill@oarcorp.com" target="_blank">joel.sherrill@oarcorp.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On 11/30/2013 5:55 PM, Wendell Silva wrote:<br>
> Hello,<br>
><br>
> I'm testing RTEMS RFS file system using qemu (pc386) and huge virtual<br>
> disk file (10G).<br>
> I've created a rfs partition with 8GB with a block size = 4096, which<br>
> allows for huge single file (~ 21 GiB).<br>
><br>
> The test program (adapted from fileio example) uses synchronized cache<br>
> and create large files (~1GiB). After creation, the file is deleted and<br>
> during the deletion I just close the qemu window in order to simulate a<br>
> system crash an assess the impact of such event on the file system<br>
> integrity.<br>
><br>
> After repeating this (destructive) test lots of times, I've found that<br>
> rfs survives well, but the free disc space is inconsistent because of<br>
> the non-deleted (marked as free) blocks.<br>
><br>
> The question is: is there any program/example on how to "sanitize" an<br>
> RFS filesystem, in order the recover these lost/orphans blocks?<br>
> Something like checkdisk.<br>
><br>
> If such code does not exist, can you provide me directions on how to do<br>
> that? I think this could be an interesting contribution.<br>
<br>
</div></div>Chris Johns should comment on this as it is his filesystem. :)<br>
<br>
Have you looked at the debugrfs shell command? I don't know what<br>
it can do but may be helpful.  I don't think it can do what you<br>
need based on the manual page.<br>
<br>
<a href="http://rtems.org/onlinedocs/doc-current/share/rtems/html/shell/File-and-Directory-Commands-debugrfsut-_002d-debug-RFS-file-system.html#File-and-Directory-Commands-debugrfs-_002d-debug-RFS-file-system" target="_blank">http://rtems.org/onlinedocs/doc-current/share/rtems/html/shell/File-and-Directory-Commands-debugrfsut-_002d-debug-RFS-file-system.html#File-and-Directory-Commands-debugrfs-_002d-debug-RFS-file-system</a><br>

<br>
Looks like an area needing contributions. Hopefully Chris will<br>
pipe up soon but I think he was traveling.<br>
<br>
> --Wendell.<br>
><br>
><br>
><br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
<br>
--<br>
Joel Sherrill, Ph.D.             Director of Research & Development<br>
joel.sherrill@OARcorp.com        On-Line Applications Research<br>
Ask me about RTEMS: a free RTOS  Huntsville AL 35805<br>
Support Available                <a href="tel:%28256%29%20722-9985" value="+12567229985">(256) 722-9985</a><br>
</font></span></blockquote></div><br></div>