From 2ccfaf73690960e800c2dd7debea559de4b58010 Mon Sep 17 00:00:00 2001 From: Qu Wenruo Date: Sat, 9 Aug 2025 14:19:16 +0930 Subject: [PATCH] btrfs: support all block sizes which is no larger than page size Currently if block size < page size, btrfs only supports one single config, 4K. This is mostly to reduce the test configurations, as 4K is going to be the default block size for all architectures. However all other major filesystems have no artificial limits on the support block size, and some are already supporting block size > page sizes. Since the btrfs subpage block support has been there for a long time, it's time for us to enable all block size <= page size support. So here enable all block sizes support as long as it's no larger than page size for experimental builds. Signed-off-by: Qu Wenruo Reviewed-by: David Sterba Signed-off-by: David Sterba --- fs/btrfs/fs.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/fs/btrfs/fs.c b/fs/btrfs/fs.c index 335209fe37347..014fb8b12f96b 100644 --- a/fs/btrfs/fs.c +++ b/fs/btrfs/fs.c @@ -78,6 +78,10 @@ bool __attribute_const__ btrfs_supported_blocksize(u32 blocksize) if (blocksize == PAGE_SIZE || blocksize == SZ_4K || blocksize == BTRFS_MIN_BLOCKSIZE) return true; +#ifdef CONFIG_BTRFS_EXPERIMENTAL + if (blocksize <= PAGE_SIZE) + return true; +#endif return false; } -- 2.47.3