Fwd: ext4_inode: i_block[] doubt
lakshmi pathi
lakshmipathi.g at gmail.com
Wed Jan 13 09:05:14 UTC 2010
~~~~~~~~~~~~~~~~
I checked for ext4-users mailing list - but unable to find it and
posted this question to ext4-beta-list at redhat.com - It's seems like
that mailing list is less active.So I'm posting it again to ext3 list
.
~~~~~~~~~~~~~~~~
I was accessing ext4 file using ext2fs lib (from
e2fsprogs-1.41.9-Fedora 12 ) ,while parsing inode contents I got these
output Let me know whether my assumptions are correct?
---------------
//code-part : print inode values
ext2fs_read_inode(current_fs,d->d_ino,&inode);
for ( i = 0; i < 15; i++)
printf ("\ni_block[%d] :%u", i, inode.i_block[i]);
---------------
In struct ext4_inode i_block[EXT4_N_BLOCKS], i_block[0] to i_block[2]
denotes extent headers and tells whether this inode uses Htree for
storing files data blocks.
//output
i_block[0] :324362
i_block[1] :4
i_block[2] :0
//remaining i_block[3] to i_block[14] holds four extents in following format
//{extent index,number of blocks in extents,starting block number}
i_block[3] :0 // --> first extent denoted as 0
i_block[4] :1 // --> has single block
i_block[5] :36890 // --> block number is 36890
i_block[6] :1 // --> second extent denoted as 1
i_block[7] :2 // --> has two blocks
i_block[8] :36892 // --> it uses 36892 and 36893
i_block[9] :3 // --??--> third extent -- why is it numbered
as 3 instead of 2?
i_block[10] :2 // --> has two blocks
i_block[11] :36898 // --> uses 36898 and 36899
i_block[12] :5 // --??--> fourth and finally extent -- again why its
comes as 5 instead of 3.
i_block[13] :11 // --> it uses 11 blocks
i_block[14] :38402 // --> starting block is 38402.
If my assumption are correct,the question is ,why i_block[9] shows 3
instead of 2 and i_block[12] says 5 instead of 3?
Thanks.
--
----
Cheers,
Lakshmipathi.G
www.giis.co.in
More information about the Ext3-users
mailing list