Issue 3: Block Mapping Between Filesystem and Device Mapper ?
Project Member Reported by sandeepksinha, Dec 17, 2008
Hi Guys,

Well There is another issue that we will have to handle sometime in the
near future of the mapping of the blocks between the file-system and the
device mapper.
As we have meta-data and all those stuffs in the file system, I am not
pretty sure about the mapping between them.

Anyone has any idea regarding the same ?

As this is a important issue but not critical, I am setting its priority to
be medium.
Dec 17, 2008
Project Member #1 imreckless@gmail.com
Yes we are aware of this issue.
I have already told VA to provide mapping by blocks.
And this again is possible once we mount ext2 fs over logical volume.
Because block size is file system dependent.
So once we mount the file system we will read the block size 
and modify our mapping table accordingly.


Dec 17, 2008
Project Member #2 sandeepksinha
(No comment was entered for this change.)
Labels: Type-Task
Dec 17, 2008
Project Member #3 sandeepksinha
>Yes we are aware of this issue.
>I have already told VA to provide mapping by blocks.
>And this again is possible once we mount ext2 fs over logical volume.
>Because block size is file system dependent.

Well, You create the logical device first and that's why the block size of the device
will be decided at the time of its creation and not at the time of creation of file
system over it or mounting a file system over it.

I believe we can have different block sizes at the block device driver level and file
system level. So, as you mentioned the mapping has to be proportionate.

>So once we mount the file system we will read the block size 
>and modify our mapping table accordingly.

Yes, that's true. Also, I believe that the block sizes will always be a multiple of
512,1024, 2048 which will solve our problem.


Dec 17, 2008
Project Member #4 checkout...@gmail.com
yes sir the block size is decided at the time of creation of logical device and in
our case it is 512. Iam pretty much sure over it . 
Since as table i have produced it provide me with begin and length in sector and when
i multiply them by 512 we get the result in bytes. hence our block size of device is
512 bytes.
and i do think by calculation we can get to know the exact no of blockgroup over our
device and no. of blockgroup in each tier respectively.
Dec 18, 2008
Project Member #5 sandeepksinha
That's true. Even I have seen that the device mapper uses a block size of 512.
I am changing the ownership of this to Vineet as he will be looking after this issue
and keep us updated on the same.
Status: Started
Owner: checkout.vineet
Dec 18, 2008
Project Member #6 checkout...@gmail.com
i figure out the exact mapping as which tier represent which disk when looking from top.
as i was able to extract the major no. and minor no. Major no tells us whether the
disk is scuzzy disk or other. and minor no. is calculated by the formulae which can
help us in gathering the exact name.

formulae :-> minor no. = (unit *64) + part

here "unit" refers disk no whether it is a or b or c of sda/sdb and 
a -> unit = 0
b -> unit = 1
and so on..
 
and "part" represent the partition of that disk.

so if we have minor no . we can get to know the disk name.
Dec 19, 2008
Project Member #7 sandeepksinha
Hi Rishi,

Through your kernel module I wish to display the exact block numbers of
data blocks.

Steps to verify.

Write data on file of a file system.
Find the data block numbers.
Find the respective data block number at device mapper level.
use dd command to populate the data at that block with some pattern.
read the file and verify the same.

The motive is to find/confirm, if the block number in the FS is 'X' then
what is the value of respective block 'X' in device mapper.

Assigning it to Rishi.

Owner: postrishi
Dec 19, 2008
Project Member #8 sandeepksinha
 Issue 7  has been merged into this issue.
Cc: sandeepksinha
Dec 21, 2008
Project Member #9 sandeepksinha
I think that the test that we are going to perform tomorrow for Rohit's model will
also verify this issue.
This issue is related to mapping of DM and FS.
I think Vineet has worked on this issue and will be working on this issue for Rohit's
model as well.
Hence, changing the ownership to Vineet.
Status: In-progress
Owner: checkout.vineet
Dec 24, 2008
Project Member #10 checkout...@gmail.com
well the issue is closed but here iam providing the url which would help anyone who
wish to figure out how disk name is mapped by the help of MAJOR and MINOR no.
http://www.linux-tutorial.info/modules.php?name=MContent&pageid=94
Dec 24, 2008
Project Member #11 checkout...@gmail.com
This issue is finally resolved.

We are able to extract the Block Group range for each device from the underlying
device sector range.

so now block allocation can be easily proceed.



Status: Done