Re: fiemap is broken for sparse file in ext4?

From: Eric Sandeen
Date: Fri Jun 11 2010 - 09:44:04 EST


Tao Ma wrote:
> Hi Eric,
> Thanks for the quick response.
>
> On 06/11/2010 12:08 PM, Eric Sandeen wrote:

...

>> What are you using to call fiemap? Here it seems to be working:
> I just wrote a simple test program by calling ioctl. It is attached.
> btw, you need to call it immediately after dd so that we have a chance
> that ext4 don't have time to allocate extents. ;)
>>
>> # dd if=/dev/zero of=testfile1 bs=1M count=1 seek=1;
>>
>> # filefrag -v testfile1
>> Filesystem type is: ef53
>> Filesystem cylinder groups is approximately 119
>> File size of testfile1 is 2097152 (512 blocks, blocksize 4096)
>> ext logical physical expected length flags
>> 0 256 151946 1 merged
>> 1 257 151951 151946 2 merged
>> 2 259 152434 151952 253 merged,eof
>> testfile1: 4 extents found
> I guess maybe filefrag use the diffrent ioctl flag, maybe
> FIEMAP_FLAG_SYNC to let ext4 sync first.

My tester isn't calling sync or using the sync flag, AFAIK.
I'll take a look at yours.

Thanks,
-Eric

> Regards,
> Tao
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/