<br><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Hi Mike,<div><br></div><div><div class="im">I&#39;m updating a user space program that finds free blocks on a ext2/3 filesystem so that it works with ext4.  I&#39;m concerned about how extents might affect my program.  My program currently looks only at the block allocation bitmaps.  Are the block allocation bitmaps still updated when an extent is created?<br>

<br></div>&gt;&gt; AFAIK block allocations bitmaps are sufficient to give you information related to block allocations, inode with extents should not </div><div>&gt;&gt; make any difference because extents are just to make block reading efficient and can be used to represent a much bigger FS.</div>
<div class="im">
<div><br></div><div>&gt;From what I can tell, extent information is only stored in the inode, and is only a way to improve the efficiency of the process of creating the structure needed in the inode.  But I haven&#39;t been able to find out anything about whether the block allocation bitmap is updated at the same time.</div>

<div><br></div></div><div>&gt;&gt; As part of  extent inode allocation block bitmaps are updated for eg. you can refer to </div><div>&gt;&gt; ext4_map_blocks</div><div>&gt;&gt;      ext4_ext_map_blocks ( Only called if inode has extents )</div>

<div>&gt;&gt;          ext4_free_blocks</div><div>&gt;&gt;               ext4_read_block_bitmap </div><div><br></div><div>Regards,</div><div>Piyush</div><div><div></div><div class="h5"><div><br><div class="gmail_quote">On Sat, Oct 29, 2011 at 3:33 AM, Mike Gibson <span dir="ltr">&lt;<a href="mailto:mike.gibson@storagecraft.com" target="_blank">mike.gibson@storagecraft.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I&#39;m updating a user space program that finds free blocks on a ext2/3 filesystem so that it works with ext4.  I&#39;m concerned about how extents might affect my program.  My program currently looks only at the block allocation bitmaps.  Are the block allocation bitmaps still updated when an extent is created?<br>


<br>
&gt;From what I can tell, extent information is only stored in the inode, and is only a way to improve the efficiency of the process of creating the structure needed in the inode.  But I haven&#39;t been able to find out anything about whether the block allocation bitmap is updated at the same time.<br>


<br>
Do extents provide a new way of expressing which blocks are allocated on disk?  Or are the block allocation bitmaps still the canonical way to determine if a given block is in use?<br>
<font color="#888888"><br>
Mike Gibson<br>
_______________________________________________<br>
Kernelnewbies mailing list<br>
<a href="mailto:Kernelnewbies@kernelnewbies.org" target="_blank">Kernelnewbies@kernelnewbies.org</a><br>
<a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
</font></blockquote></div><br></div>
</div></div></blockquote></div><br>