On Thu, Feb 11, 2016 at 05:55:30PM +0100, David Sterba wrote:
> The current practical default is ~4k on x86_64 (the logic is more complex,
> simplified for brevity), the inlined files land in the metadata group and
> thus consume space that could be needed for the real metadata.
> 
> The inlining brings some usability surprises:
> 
> 1) total space consumption measured on various filesystems and btrfs
>    with DUP metadata was quite visible because of the duplicated data
>    within metadata
> 
> 2) inlined data may exhaust the metadata, which are more precious in case
>    the entire device space is allocated to chunks (ie. balance cannot
>    make the space more compact)
> 
> 3) performance suffers a bit as the inlined blocks are duplicate and
>    stored far away on the device.
> 
> Proposed fix: set the default to 2048
> 
> This fixes namely 1), the total filesysystem space consumption will be on
> par with other filesystems.
> 
> Partially fixes 2), more data are pushed to the data block groups.
> 
> The characteristics of 3) are based on actual small file size
> distribution.
> 
> The change is independent of the metadata blockgroup type (though it's
> most visible with DUP) or system page size as these parameters are not
> trival to find out, compared to file size.

This is a good compromise, and people that want higher numbers can
always use the mount option.

-chris
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to