Accepting request 1093896 from home:polslinux:branches:filesystems

- update to 6.3.2:
   * mkfs: option -R deprecated, options unified in -O (-R still works)
   * mkfs: fix potential race with udev leading to EBUSY due to repeatedly
     opened file descriptors
   * block-group-tree is out of experimental mode
      * available as 'mkfs.btrfs -O block-group-tree'
      * btrfstune can do in-place conversion to/from (use with care)
   * balance: fix recognizing old and new syntax
   * subvol snapshot: specific error if a failure is caused by an active swapfile
   * tree-stats: rephrase warning when run on a mounted filesystem
   * completion: 'filesystem du' also completes files
   * check: fix docs, help text and warning that --force + --repair works on a
     mounted filesystem
   * build: fix static build when static libudev is available
   * convert: fix checksum of a block relocated from 0-1M range
   * qgroup show: fix formatting of limit values in json output
   * receive: report paret subovl UUID on errors
   * btrfsune: new option --convert-to-free-space-tree to convert from
     block-group-tree back to extent tree for block group tracking
   * mkfs: make option --rootdir more verbose and report start when filling
     from the given directory starts
   * experimental:
      * btrfstune: checksum switch logic reimplemented, conversion of all
        metadata and data now works, resume from various states also supported
   * other:
      * test updates and fixes
      * CI cleanups and old files removed
      * integration with Github actions
- drop btrfs-progs-qgroup-show-fix-formatting-of-limit-valu.patch 
  since it has been upstreamed.

OBS-URL: https://build.opensuse.org/request/show/1093896
OBS-URL: https://build.opensuse.org/package/show/filesystems/btrfsprogs?expand=0&rev=397
This commit is contained in:
David Sterba 2023-06-20 11:08:45 +00:00 committed by Git OBS Bridge
parent 4702eb2080
commit 7b0cce9f4e
7 changed files with 39 additions and 80 deletions

View File

@ -1,72 +0,0 @@
From ab32c4445d0d14632e5ae717e56d57455eb98294 Mon Sep 17 00:00:00 2001
From: David Sterba <dsterba@suse.com>
Date: Fri, 26 May 2023 17:04:11 +0200
Subject: [PATCH] btrfs-progs: qgroup show: fix formatting of limit values in
json output
There are reports that json output of 'qgroup show' crashes due to
internal error when printing the limit values:
INTERNAL ERROR: unknown unit base, mode 2304
btrfs(internal_error+0x10a)[0x5605c37ce48a]
btrfs(pretty_size_snprintf+0x5c)[0x5605c37d105c]
btrfs(fmt_print+0x44e)[0x5605c37d178e]
btrfs(+0x7ed1d)[0x5605c3800d1d]
btrfs(main+0x8f)[0x5605c379beff]
/lib64/libc.so.6(+0x27bb0)[0x7f83924ddbb0]
/lib64/libc.so.6(__libc_start_main+0x8b)[0x7f83924ddc79]
btrfs(_start+0x25)[0x5605c379d405]
common/units.c:82: pretty_size_snprintf: Assertion `0` failed, value 0
btrfs(+0x1d4b1)[0x5605c379f4b1]
btrfs(pretty_size_snprintf+0x7b)[0x5605c37d107b]
btrfs(fmt_print+0x44e)[0x5605c37d178e]
btrfs(+0x7ed1d)[0x5605c3800d1d]
btrfs(main+0x8f)[0x5605c379beff]
/lib64/libc.so.6(+0x27bb0)[0x7f83924ddbb0]
/lib64/libc.so.6(__libc_start_main+0x8b)[0x7f83924ddc79]
btrfs(_start+0x25)[0x5605c379d405]
This is caused by "size" format that requires the unit mode, but it was not
specified and some stack value used. As json prints the raw values, use
the plain %llu format.
Link: https://bugzilla.opensuse.org/show_bug.cgi?id=1206960
Link: https://bugzilla.opensuse.org/show_bug.cgi?id=1209136#c15
Signed-off-by: David Sterba <dsterba@suse.com>
---
cmds/qgroup.c | 4 ++--
tests/cli-tests/005-qgroup-show/test.sh | 1 +
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/cmds/qgroup.c b/cmds/qgroup.c
index 654fca4bb7d67e..4c66ee0ad5e41f 100644
--- a/cmds/qgroup.c
+++ b/cmds/qgroup.c
@@ -1439,10 +1439,10 @@ static const struct rowspec qgroup_show_rowspec[] = {
{ .key = "qgroupid", .fmt = "qgroupid", .out_json = "qgroupid" },
{ .key = "referenced", .fmt = "%llu", .out_json = "referenced" },
{ .key = "exclusive", .fmt = "%llu", .out_json = "exclusive" },
- { .key = "max_referenced", .fmt = "size", .out_json = "max_referenced" },
+ { .key = "max_referenced", .fmt = "%llu", .out_json = "max_referenced" },
/* Special value if limits not set. */
{ .key = "max_referenced-none", .fmt = "%s", .out_json = "max_referenced" },
- { .key = "max_exclusive", .fmt = "size", .out_json = "max_exclusive" },
+ { .key = "max_exclusive", .fmt = "%llu", .out_json = "max_exclusive" },
/* Special value if limits not set. */
{ .key = "max_exclusive-none", .fmt = "%s", .out_json = "max_exclusive" },
{ .key = "path", .fmt = "str", .out_json = "path" },
diff --git a/tests/cli-tests/005-qgroup-show/test.sh b/tests/cli-tests/005-qgroup-show/test.sh
index 455f2d3c2da101..97e51273aa6929 100755
--- a/tests/cli-tests/005-qgroup-show/test.sh
+++ b/tests/cli-tests/005-qgroup-show/test.sh
@@ -17,6 +17,7 @@ run_mayfail "$TOP/btrfs" --format json qgroup show "$TEST_MNT"
run_mayfail $SUDO_HELPER "$TOP/btrfs" qgroup show "$TEST_MNT"
run_mayfail $SUDO_HELPER "$TOP/btrfs" --format json qgroup show "$TEST_MNT"
run_check $SUDO_HELPER "$TOP/btrfs" quota enable "$TEST_MNT"
+run_check $SUDO_HELPER "$TOP/btrfs" qgroup limit 128m "$TEST_MNT"
run_mayfail "$TOP/btrfs" qgroup show "$TEST_MNT"
run_mayfail "$TOP/btrfs" --format json qgroup show "$TEST_MNT"
run_check $SUDO_HELPER "$TOP/btrfs" qgroup show "$TEST_MNT"
--
2.40.0

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f8560f9993f621c7d63e1acbf143b76827954909792bf4ba2ed02f4542675943
size 3758695

BIN
btrfs-progs-v6.3.2.tar.sign Normal file

Binary file not shown.

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:058685b9f3074a3504edd5b92f7878d6986b1ebe6f681bfedec298caa812ade7
size 3045903

Binary file not shown.

View File

@ -1,3 +1,37 @@
-------------------------------------------------------------------
Tue Jun 20 07:12:59 UTC 2023 - Paolo Stivanin <info@paolostivanin.com>
- update to 6.3.2:
* mkfs: option -R deprecated, options unified in -O (-R still works)
* mkfs: fix potential race with udev leading to EBUSY due to repeatedly
opened file descriptors
* block-group-tree is out of experimental mode
* available as 'mkfs.btrfs -O block-group-tree'
* btrfstune can do in-place conversion to/from (use with care)
* balance: fix recognizing old and new syntax
* subvol snapshot: specific error if a failure is caused by an active swapfile
* tree-stats: rephrase warning when run on a mounted filesystem
* completion: 'filesystem du' also completes files
* check: fix docs, help text and warning that --force + --repair works on a
mounted filesystem
* build: fix static build when static libudev is available
* convert: fix checksum of a block relocated from 0-1M range
* qgroup show: fix formatting of limit values in json output
* receive: report paret subovl UUID on errors
* btrfsune: new option --convert-to-free-space-tree to convert from
block-group-tree back to extent tree for block group tracking
* mkfs: make option --rootdir more verbose and report start when filling
from the given directory starts
* experimental:
* btrfstune: checksum switch logic reimplemented, conversion of all
metadata and data now works, resume from various states also supported
* other:
* test updates and fixes
* CI cleanups and old files removed
* integration with Github actions
- drop btrfs-progs-qgroup-show-fix-formatting-of-limit-valu.patch
since it has been upstreamed.
-------------------------------------------------------------------
Mon May 29 00:00:00 CEST 2023 - dsterba@suse.cz

View File

@ -34,7 +34,7 @@
%define _dracutmodulesdir %(pkg-config --variable dracutmodulesdir dracut)
Name: btrfsprogs
Version: 6.3
Version: 6.3.2
Release: 0
Summary: Utilities for the Btrfs filesystem
License: GPL-2.0-only
@ -55,7 +55,6 @@ Provides: btrfs-progs = %{version}-%{release}
Provides: btrfs-progs(%_arch) = %{version}-%{release}
Patch1: mkfs-default-features.patch
Patch2: btrfs-progs-qgroup-show-fix-formatting-of-limit-valu.patch
%if %build_docs
BuildRequires: python3-Sphinx
@ -208,9 +207,7 @@ Supplements: packageand(%{name}:bash-completion)
bash command line completion support for btrfsprogs.
%prep
%setup -q -n btrfs-progs-v%{version}
%patch1 -p1
%patch2 -p1
%autosetup -p1 -n btrfs-progs-v%{version}
%build
./autogen.sh