<div dir="ltr"><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">Hello,</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px"><br></div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">
We are a team of three final year under-graduates from <a href="http://pict.edu/" target="_blank">Pune Institute</a></div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px"><a href="http://pict.edu/" target="_blank">of Computer Technology</a>, India and were looking for a project in XFS </div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">with a development time of about 6 - 7 months. On contacting Dave, </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">
he suggested we work on the userspace utility, xfs_fsr.</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px"> </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">
xfs_fsr(online defragmenter):</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">A few possible enhancements to xfs_fsr are as follows:</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">
 </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">1. explicit control of locality for groups of files.</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">2. ability to defragment only portions of files rather</div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">than just whole files.</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">3. defragmenting free space.</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">
4. enhanced/faster filesystem scanning.</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px"> </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">Our understanding of the problem is as follows:</div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px"> </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">A) We identified the first thing needed, will be to find regions of </div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">fragmented free space. Dave directed us to the following prototype </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">
that he had written</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">(<a href="http://oss.sgi.com/archives/xfs/2012-10/msg00363.html" target="_blank">http://oss.sgi.com/archives/xfs/2012-10/msg00363.html</a>)</div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px"> </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">B)  The next task will be to go about finding the owners of the blocks</div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">that are causing the region of fragmented free space. It will require a</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">
reverse block map to do this efficiently. Dave has said that he is likely</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">to implement it in the next couple of months, and we understand that</div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">we will to need to define the interfaces needed to query the rmap from </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">
userspace.</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px"> </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">C)  Once the fragmented free space, and the files that own the blocks </div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">that fragment the free space are found we will need to move them, and </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">
take care of the following:</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">(a) move just the blocks we need to.</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">
(b) control exactly where we move them to.</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px"> </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">We are reviewing the recent patches on the mailing list for IOC_MOV_DATA, </div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">which allows an arbitrary range of one file to be swapped with an arbitrary</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">
range of another file. The core mechanism required by #2.</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">(<a href="http://oss.sgi.com/archives/xfs/2014-07/msg00109.html" target="_blank">http://oss.sgi.com/archives/xfs/2014-07/msg00109.html</a>)</div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px"> </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">Hence after due consideration we are planning to execute</div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">the 4 sub topics in the following order:</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">1. defragmenting free space.</div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">2. enhanced/faster filesystem scanning.</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">3. ability to defragment only portions of files rather</div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">than just whole files.</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">4. explicit control of locality for groups of files.</div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px"> </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">Comments regarding the same will be appreciated. We would also like to thank </div>
<div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">Dave for his inputs. We look forward to working with the community and hope to</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">
make a valuable contribution.</div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px"> </div><div class="gmail_extra" style="font-family:arial,sans-serif;font-size:13px">Regards.</div></div>