Linux Btrfs filesystem development
 help / color / mirror / Atom feed
* [PATCH 00/13] btrfs: zoned: rework zoned garbage collection
@ 2026-10-14 12:03 Johannes Thumshirn
  2026-10-14 12:03 ` [PATCH 01/13] btrfs: zoned: wait for a running block group reclaim in RECLAIM_ZONES Johannes Thumshirn
                   ` (12 more replies)
  0 siblings, 13 replies; 17+ messages in thread
From: Johannes Thumshirn @ 2026-10-14 12:03 UTC (permalink / raw)
  To: linux-btrfs
  Cc: Hans Holmberg, Naohiro Aota, Damien Le Moal, Christoph Hellwig,
	Johannes Thumshirn

Zoned fileystems currently (still) suffer from premature ENOSPC issues.
One of the sources is accounted for with
https://lore.kernel.org/linux-btrfs/20261013072941.424029-1-johannes.thumshirn@wdc.com/.
The second source of problems is wrong accounting and relocation still
being triggered not timely enough to evacuate the space the user write
needs.

This series attacks the (hopefully!!) last two remaining issues. It
passed a 100 times (of 100 runs) of fstests generic/747 which has never
passed unchanged before on zoned BTRFS in my test setup (256MB zone
size, 64 zones, 4 conventional zones).

Johannes Thumshirn (13):
  btrfs: zoned: wait for a running block group reclaim in RECLAIM_ZONES
  btrfs: zoned: don't count in-flight data as available in statfs
  btrfs: zoned: don't recheck the reclaim threshold of zoned
    block-groups
  btrfs: zoned: don't account superblock zones as available data space
  btrfs: zoned: factor out resetting a block group in place
  btrfs: zoned: prepare reserving the data relocation block group at
    runtime
  btrfs: zoned: promote reset data block groups to the relocation target
  btrfs: zoned: return finished relocation block groups to the data
    space_info
  btrfs: zoned: reuse block groups emptied by reclaim as relocation
    target
  btrfs: add btrfs_bg_type_to_num_stripes
  btrfs: zoned: keep a zone free for relocation when allocating data
    chunks
  btrfs: zoned: don't count the relocation zone reserve as available in
    statfs
  btrfs: zoned: provide zoned specific reclaim sweep

 fs/btrfs/block-group.c |  22 +-
 fs/btrfs/block-group.h |   1 +
 fs/btrfs/space-info.c  |   3 +-
 fs/btrfs/super.c       |  32 ++-
 fs/btrfs/volumes.c     |  35 ++-
 fs/btrfs/volumes.h     |   1 +
 fs/btrfs/zoned.c       | 583 ++++++++++++++++++++++++++++++++++-------
 fs/btrfs/zoned.h       |  25 ++
 8 files changed, 593 insertions(+), 109 deletions(-)

-- 
2.55.0


^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2026-10-16  7:47 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-14 12:03 [PATCH 00/13] btrfs: zoned: rework zoned garbage collection Johannes Thumshirn
2026-10-14 12:03 ` [PATCH 01/13] btrfs: zoned: wait for a running block group reclaim in RECLAIM_ZONES Johannes Thumshirn
2026-10-14 12:03 ` [PATCH 02/13] btrfs: zoned: don't count in-flight data as available in statfs Johannes Thumshirn
2026-10-16  7:01   ` Naohiro Aota
2026-10-16  7:24     ` Johannes Thumshirn
2026-10-14 12:03 ` [PATCH 03/13] btrfs: zoned: don't recheck the reclaim threshold of zoned block-groups Johannes Thumshirn
2026-10-16  7:47   ` Naohiro Aota
2026-10-14 12:03 ` [PATCH 04/13] btrfs: zoned: don't account superblock zones as available data space Johannes Thumshirn
2026-10-14 12:03 ` [PATCH 05/13] btrfs: zoned: factor out resetting a block group in place Johannes Thumshirn
2026-10-14 12:03 ` [PATCH 06/13] btrfs: zoned: prepare reserving the data relocation block group at runtime Johannes Thumshirn
2026-10-14 12:03 ` [PATCH 07/13] btrfs: zoned: promote reset data block groups to the relocation target Johannes Thumshirn
2026-10-14 12:03 ` [PATCH 08/13] btrfs: zoned: return finished relocation block groups to the data space_info Johannes Thumshirn
2026-10-14 12:03 ` [PATCH 09/13] btrfs: zoned: reuse block groups emptied by reclaim as relocation target Johannes Thumshirn
2026-10-14 12:03 ` [PATCH 10/13] btrfs: add btrfs_bg_type_to_num_stripes Johannes Thumshirn
2026-10-14 12:03 ` [PATCH 11/13] btrfs: zoned: keep a zone free for relocation when allocating data chunks Johannes Thumshirn
2026-10-14 12:03 ` [PATCH 12/13] btrfs: zoned: don't count the relocation zone reserve as available in statfs Johannes Thumshirn
2026-10-14 12:03 ` [PATCH 13/13] btrfs: zoned: provide zoned specific reclaim sweep Johannes Thumshirn

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox