These patches are backport for the 5.18 branch. They all fixes zoned mode related issued on btrfs. The patch 3 looks different from upstream commit b3a3b0255797 ("btrfs: zoned: drop optimization of zone finish") as a refactoring patch is not picked into the stable branch. But, essentially, they do the same thing which always zone finish the zones after (nearly) full write. The v2 just amend a line to add a missing variable declaration. Naohiro Aota (3): btrfs: zoned: prevent allocation from previous data relocation BG btrfs: zoned: fix critical section of relocation inode writeback btrfs: zoned: drop optimization of zone finish fs/btrfs/block-group.h | 1 + fs/btrfs/extent-tree.c | 20 +++++++++++++++-- fs/btrfs/extent_io.c | 3 ++- fs/btrfs/inode.c | 2 ++ fs/btrfs/zoned.c | 50 +++++++++++++++++++++++++++++++++++++----- fs/btrfs/zoned.h | 5 +++++ 6 files changed, 73 insertions(+), 8 deletions(-) -- 2.35.1