mbox series

[v2,0/5] btrfs-progs: zoned devices support for bgt feature

Message ID cover.1712095635.git.wqu@suse.com (mailing list archive)
Headers show
Series btrfs-progs: zoned devices support for bgt feature | expand

Message

Qu Wenruo April 2, 2024, 10:07 p.m. UTC
[CHANGELOG]
v2:
- Remove the header cleanup for tune/main.c
  That would cause compiling error as our expertimental features
  still rely on that header.

[REPO]
https://github.com/adam900710/btrfs-progs/tree/zoned_bgt

There is a bug report that, the following tool would fail on zone
devices:

- mkfs.btrfs -O block-group-tree
- btrfstune --convert-to-block-group-tree|--convert-from-block-group-tree

The mkfs failure is caused by zoned incompatible pwrite() calls for
block group tree metadata.

The btrfstune failure is caused by the incorrectly opened fd.


Before fixing both bugs, do one small cleanup, as my later check on the
test case output finds a missing newline for btrfstune.

Then fixes for each bug, and new test cases for each bug.

Qu Wenruo (5):
  btrfs-progs: tune: add the missing newline for
    --convert-from-block-group-tree
  btrfs-progs: mkfs: use proper zoned compatible write for bgt feature
  btrfs-progs: tune: properly open zoned devices for RW
  btrfs-progs: tests-mkfs: add test case for zoned block group tree
    feature
  btrfs-progs: tests-misc: add a test case to check zoned bgt conversion

 mkfs/common.c                                 |  4 +-
 .../063-btrfstune-zoned-bgt/test.sh           | 55 +++++++++++++++++++
 tests/mkfs-tests/031-zoned-bgt/test.sh        | 40 ++++++++++++++
 tune/convert-bgt.c                            |  2 +-
 tune/main.c                                   |  6 +-
 5 files changed, 103 insertions(+), 4 deletions(-)
 create mode 100755 tests/misc-tests/063-btrfstune-zoned-bgt/test.sh
 create mode 100755 tests/mkfs-tests/031-zoned-bgt/test.sh

--
2.44.0

Comments

David Sterba April 3, 2024, 1:50 p.m. UTC | #1
On Wed, Apr 03, 2024 at 08:37:35AM +1030, Qu Wenruo wrote:
> [CHANGELOG]
> v2:
> - Remove the header cleanup for tune/main.c
>   That would cause compiling error as our expertimental features
>   still rely on that header.

You don't need to resend the whole patchset, deleting a commit can be
done locally in case it's trivial and does not cause other conflicts.
For build checks it's of course OK to update the branch and push.
Now in devel, thanks.