2014-12-23 21:34:33

by Phillip Susi

[permalink] [raw]
Subject: Ext4 tail merging?

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Ext4 still does not support tail merging right? I had a user post
this filefrag output and was surprised to see that it says the merged
flag is set. How can this be?

$ filefrag -v /boot/grub/grubenv
Filesystem type is: ef53
Filesystem cylinder groups approximately 19
File size of /boot/grub/grubenv is 1024 (1 block of 4096 bytes)
ext: logical_offset: physical_offset: length: expected: flags:
0: 0.. 0: 494592.. 494592: 1: merged,eof
/boot/grub/grubenv: 1 extent found, perfection would be -1 extent

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (MingW32)

iQEcBAEBAgAGBQJUmd/lAAoJENRVrw2cjl5RL1YH+gOPL+fxjD9zUlgOZf40D25l
HgyXP6uXiiLmm/ZUq+htmsvcsM2B7ymT2eZ7mFJfPW90zZbwY9aMXLxf7sSwwu9w
9aETK/s/aMzih+CEii4oDAd2URzpHGzYeQyvH5xPm01JOm7aHMUzw8kMYE5AFvsB
8/HJWboAbZFpdFQO7GRcFWknbEhHAfYwOCOvv7H5Ouks7+Ia07fQD68pzbdVtP90
LDRbml1cg7Us8BJa1Hrc/DfYTa0DcsIpAgFlbCEAu7Mui2C2EW0qDX6TCp9jHM6C
6XGjGqW1f70rgAzK4P2sfMa1UkF/PQQpoTiKjzinZuBbc6Krv7tjJvPXrv7uy1Q=
=GIq0
-----END PGP SIGNATURE-----


2014-12-23 22:13:21

by Andreas Dilger

[permalink] [raw]
Subject: Re: Ext4 tail merging?

On Dec 23, 2014, at 2:34 PM, Phillip Susi <[email protected]> wrote:
>
> Ext4 still does not support tail merging right? I had a user post
> this filefrag output and was surprised to see that it says the merged
> flag is set. How can this be?
>
> $ filefrag -v /boot/grub/grubenv
> Filesystem type is: ef53
> Filesystem cylinder groups approximately 19
> File size of /boot/grub/grubenv is 1024 (1 block of 4096 bytes)
> ext: logical_offset: physical_offset: length: expected: flags:
> 0: 0.. 0: 494592.. 494592: 1: merged,eof
> /boot/grub/grubenv: 1 extent found, perfection would be -1 extent

"merged" in this context doesn't mean "tail merging" in the sense of Reiserfs. This just means that the reported "extent" is actually merged
from a series of contiguous blocks in an ext3 block-mapped file (as
opposed to an extent-mapped file).

Note that there is an experimental ext4 feature similar to "tail merging"
that is being added. That is "inline data", which stores the data of
small files or directories directly in the inode as an xattr.

Cheers, Andreas