mirror of
https://github.com/kdave/btrfs-progs
synced 2024-12-26 16:12:34 +00:00
d7be6ed156
[ci skip] Signed-off-by: David Sterba <dsterba@suse.com>
30 lines
1.4 KiB
ReStructuredText
30 lines
1.4 KiB
ReStructuredText
Subpage support
|
|
===============
|
|
|
|
Subpage block size support, or just *subpage* for short, is a feature to allow
|
|
using a filesystem that has different size of data block size (*sectorsize*)
|
|
and the host CPU page size. For easier implementation the support was limited
|
|
to the exactly same size of the block and page. On x86_64 this is typically
|
|
4KiB, but there are other architectures commonly used that make use of larger
|
|
pages, like 64KiB on 64bit ARM or PowerPC or 16KiB on Apple Silicon. This means
|
|
filesystems created with 64KiB sector size cannot be mounted on a system with
|
|
4KiB page size.
|
|
|
|
Since btrfs-progs 6.7, filesystems are created with a 4KiB sector size by
|
|
default, though it remains possible to create filesystems with other sector sizes
|
|
(such as 64KiB with the "-s 64k" option for :command:`mkfs.btrfs`). This
|
|
ensures that new filesystems are compatible across other architecture variants
|
|
using larger page sizes.
|
|
|
|
Requirements, limitations
|
|
-------------------------
|
|
|
|
The initial subpage support has been added in kernel 5.15. Most features are
|
|
already working without problems. On a 64KiB page system, a filesystem with
|
|
4KiB sectorsize can be mounted and used as long as the initial mount succeeds.
|
|
Subpage support is used by default for systems with a non-4KiB page size since
|
|
btrfs-progs 6.7.
|
|
|
|
Please refer to status page of :ref:`status-subpage-block-size` for
|
|
compatibility.
|