Files up to some size can be stored in the metadata section (“inline” in the
b-tree nodes), i.e. no separate blocks for the extents. The default limit is
2048 bytes and can be configured by mount option
max_inline. The data of
inlined files can be also compressed as long as they fit into the b-tree nodes.
If the filesystem has been created with different data and metadata profiles,
namely with different level of integrity, this also affects the inlined files.
It can be completely disabled by mounting with
max_inline=0. The upper
limit is either the size of b-tree node or the page size of the host.
An inline file can be identified by enumerating the extents, e.g. by the tool filefrag:
$ filefrag -v inlinefile Filesystem type is: 9123683e File size of inlinefile is 463 (1 block of 4096 bytes) ext: logical_offset: physical_offset: length: expected: flags: 0: 0.. 4095: 0.. 4095: 4096: last,not_aligned,inline,eof
In the above example, the file is not compressed, otherwise it would have the encoded flag. The inline files have no limitations and behave like regular files with respect to copying, renaming, reflink, truncate etc.