Thanks Frank,

my reply inline.

Frank Hofmann wrote:


Well:

The file itself has (filesize / fs_bsize) blocks.
An indirect block of fs_bsize holds fs_bsize/4 block addrs

its because daddr_t is the address datatype and it is of ulong_t basically?

A doubly indirect block of fs_bsize holds fs_bsize/4 direct block addrs

So you need:

    (filesize / (fs_bsize^2/4)) indirect blocks
    (filesize / (fs_bsize^3/16)) doubly indirect blocks
    (filesize  / (fs_bsize^4/64)^3) triply indirect blocks



Is the filesize above excluding the size pointed to by direct block?

Isn't it like (if I am not wrong),

no of blocks = (filesize/fs_bsize) + ( (((filesize/fs_bsize) - 12)* 4) / fs_bsize ) + tripple_indirect blocks ? I am assuming 12 no of indirect blocks.

Nagaraj.


Typo on the last line of course, the last '^3' shouldn't be there.
FrankH.


If my math serves me right.
And the file is not sparse.

FrankH.



This message posted from opensolaris.org
_______________________________________________
ufs-discuss mailing list
[email protected]

_______________________________________________
ufs-discuss mailing list
[email protected]

_______________________________________________
ufs-discuss mailing list
[email protected]

Reply via email to