Re: when does btrfs create sparse extents?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



e.g. from a 10m file created with truncate on two Btrfs file systems

original holes format (default)

    item 6 key (257 EXTENT_DATA 0) itemoff 15768 itemsize 53
        generation 7412 type 1 (regular)
        extent data disk byte 0 nr 0
        extent data offset 0 nr 10485760 ram 10485760
        extent compression 0 (none)

On a file system with no-holes feature set, this item simply doesn't
exist. I think basically it works by inference. Both kinds of files
have size in the INODE_ITEM, e.g.

    item 4 key (257 INODE_ITEM 0) itemoff 32245 itemsize 160
        generation 889509 transid 889509 size 10485760 nbytes 0

Sparse extents are explicitly stated in the original format with disk
byte 0 in an EXTENT_DATA item; whereas in the newer format, sparse
extents exist whenever EXTENT_DATA items don't completely describe the
file's size.

--
Chris Murphy



[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux