public inbox for linux-btrfs@vger.kernel.org
 help / color / mirror / Atom feed
From: Qu Wenruo <wqu@suse.com>
To: linux-btrfs@vger.kernel.org
Subject: [PATCH 0/2] btrfs-progs: allowing 2K block size for experimental builds
Date: Wed, 26 Feb 2025 14:29:13 +1030	[thread overview]
Message-ID: <cover.1740542229.git.wqu@suse.com> (raw)

Btrfs always has its minimal block size as 4K, but that means on the
most common architecture, x86_64, we can not utilize the subpage block
size routine at all.

Although the future larger folios support will allow us to utilize
subpage routines, the support is still not yet there.

On the other hand, lowering the block size for experimental/debug builds is
much easier, there is only one major bug (fixed by the first patch) in
btrfs-progs at least.

Kernel sides enablement is not huge either, but it has dependency on
the subpage related backlog patches to pass most fstests, which is not small.

However since we're not pushing this 2K block size for end users, we can
accept some limitations on the 2K block size support:

- No 2K node size mkfs support
  This is mostly caused by how we create the initial temporaray fs.
  The initial temporaray fs contains at least 6 root items.
  But one root item is 439 bytes, we need a level 1 root tree for the
  initial temporaray fs.

  But we do not support multi-level trees for the initial fs, thus no
  such support for now.

- No mixed block groups mkfs support
  Caused by the missing 2K node size support

Qu Wenruo (3):
  btrfs-progs: fix the incorrect buffer size for super block
  btrfs-progs: support 2k block size
  btrfs-progs: convert: check the sectorsize against BTRFS_MIN_BLOCKSIZE

 common/device-scan.c    |  2 +-
 common/fsfeatures.c     | 11 ++++++++---
 convert/main.c          |  2 +-
 kernel-shared/ctree.h   |  6 ++++++
 kernel-shared/disk-io.c | 11 ++++-------
 mkfs/main.c             |  7 -------
 6 files changed, 20 insertions(+), 19 deletions(-)

--
2.48.1


             reply	other threads:[~2025-02-26  3:59 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-26  3:59 Qu Wenruo [this message]
2025-02-26  3:59 ` [PATCH] btrfs-progs: docs: add an extra note to btrfs data checksum and directIO Qu Wenruo
2025-02-26  3:59 ` [PATCH 1/3] btrfs-progs: fix the incorrect buffer size for super block Qu Wenruo
2025-02-26  3:59 ` [PATCH 2/3] btrfs-progs: support 2k block size Qu Wenruo
2025-02-26  3:59 ` [PATCH 3/3] btrfs-progs: convert: check the sectorsize against BTRFS_MIN_BLOCKSIZE Qu Wenruo
2025-03-19 21:49 ` [PATCH 0/2] btrfs-progs: allowing 2K block size for experimental builds David Sterba
2025-03-19 22:19   ` Qu Wenruo
2025-03-19 23:27     ` David Sterba

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1740542229.git.wqu@suse.com \
    --to=wqu@suse.com \
    --cc=linux-btrfs@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox