From 4ca6444fba3a0c99940c5aef953e678c8c49c2bc Mon Sep 17 00:00:00 2001 From: David Sterba Date: Tue, 17 Sep 2024 15:44:39 +0200 Subject: [PATCH] btrfs-progs: docs: inline files vs tail packing Explain the difference, in case somebody want's to use it as a source to correct that on Wikipedia. [ ci skip ] Signed-off-by: David Sterba --- Documentation/Inline-files.rst | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Documentation/Inline-files.rst b/Documentation/Inline-files.rst index 389e609375..0416c2bf95 100644 --- a/Documentation/Inline-files.rst +++ b/Documentation/Inline-files.rst @@ -25,3 +25,15 @@ An inline file can be identified by enumerating the extents, e.g. by the tool 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. + +.. note:: + This is not `tail packing `__, + known e.g. from `ReiserFS `__ . The + whole inline file must fit and is stored in the metadata block. Larger files + have their extents stored in blocks and the last one can be underutilized. + With tail packing such blocks would be stored elsewhere out of order, + possibly mixed with other last blocks from other files. + + This was an early design decision not to implement it due to experience with + the complexity in ReiserFS and does not seem justified with the possible + space savings in the data blocks but increased metadata to track the packed blocks.