diff --git a/0001-btrfs-progs-free-qgroup-counts-in-btrfsck.patch b/0001-btrfs-progs-free-qgroup-counts-in-btrfsck.patch deleted file mode 100644 index 528e10b..0000000 --- a/0001-btrfs-progs-free-qgroup-counts-in-btrfsck.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 4995239a8e53ef58b788a6df6263318cb656cd79 Mon Sep 17 00:00:00 2001 -From: Mark Fasheh -Date: Wed, 15 Jun 2016 13:28:28 -0700 -Subject: [PATCH 1/3] btrfs-progs: free qgroup counts in btrfsck - -Signed-off-by: Mark Fasheh ---- - cmds-check.c | 1 + - qgroup-verify.c | 13 +++++++++++++ - qgroup-verify.h | 2 ++ - 3 files changed, 16 insertions(+) - -diff --git a/cmds-check.c b/cmds-check.c -index bada87e..7b65f89 100644 ---- a/cmds-check.c -+++ b/cmds-check.c -@@ -9890,6 +9890,7 @@ out: - (unsigned long long)data_bytes_allocated, - (unsigned long long)data_bytes_referenced); - -+ free_qgroup_counts(); - free_root_recs_tree(&root_cache); - close_out: - close_ctree(root); -diff --git a/qgroup-verify.c b/qgroup-verify.c -index 1a0d38c..7b78504 100644 ---- a/qgroup-verify.c -+++ b/qgroup-verify.c -@@ -1095,6 +1095,19 @@ int report_qgroups(int all) - return ret; - } - -+void free_qgroup_counts(void) -+{ -+ struct rb_node *node; -+ struct qgroup_count *c; -+ node = rb_first(&counts.root); -+ while (node) { -+ c = rb_entry(node, struct qgroup_count, rb_node); -+ node = rb_next(node); -+ rb_erase(&c->rb_node, &counts.root); -+ free(c); -+ } -+} -+ - int qgroup_verify_all(struct btrfs_fs_info *info) - { - int ret; -diff --git a/qgroup-verify.h b/qgroup-verify.h -index 3747465..0f8ff9b 100644 ---- a/qgroup-verify.h -+++ b/qgroup-verify.h -@@ -27,4 +27,6 @@ int report_qgroups(int all); - - int print_extent_state(struct btrfs_fs_info *info, u64 subvol); - -+void free_qgroup_counts(void); -+ - #endif --- -2.1.4 - diff --git a/0169-btrfs-progs-udev-add-rules-for-dm-devices.patch b/0169-btrfs-progs-udev-add-rules-for-dm-devices.patch deleted file mode 100644 index 557ffd2..0000000 --- a/0169-btrfs-progs-udev-add-rules-for-dm-devices.patch +++ /dev/null @@ -1,82 +0,0 @@ -From 8bd39e44efa9fdbf221200b3d680b2d8205c89e9 Mon Sep 17 00:00:00 2001 -From: Jeff Mahoney -Date: Fri, 6 May 2016 15:18:32 -0400 -Subject: [PATCH v2] btrfs-progs: udev: add rules for dm devices -References: bsc#912170 bsc#888215 -Patch-upstream: Submitted to linux-btrfs, 9 May 2016 - -Systemd's btrfs rule runs btrfs dev ready on each device -as it's discovered. The btrfs command is executed as a builtin -command via an IMPORT{builtin} rule, which means it gets -executed at rule evaluation time, not rule execution time. That -means that the device mapper links haven't been setup yet and the only -nodes that can be depended upon are /dev/dm-#. That we see -/dev/mapper/name names in /proc/mounts is only because we replace the -device name we have cached with the one passed in via mount. If -we have a multi-device file system and the primary device is removed, -the remaining devices will show /dev/dm-#. In addition, if the -udev rule is executed again by someone generating a change event (e.g. -partprobe), the names are also replaced by the /dev/dm-# names. - -This patch adds a new rule that adds a run rule that calls btrfs dev -ready again using the device mapper links once they're created. ---- - 64-btrfs-dm.rules | 10 ++++++++++ - Makefile.in | 8 ++++++++ - configure.ac | 2 ++ - 3 files changed, 20 insertions(+) - create mode 100644 64-btrfs-dm.rules - ---- /dev/null -+++ b/64-btrfs-dm.rules -@@ -0,0 +1,10 @@ -+SUBSYSTEM!="block", GOTO="btrfs_end" -+KERNEL!="dm-[0-9]*", GOTO="btrfs_end" -+ACTION!="add|change", GOTO="btrfs_end" -+ENV{ID_FS_TYPE}!="btrfs", GOTO="btrfs_end" -+ -+# Once the device mapper symlink is created, tell btrfs about it -+# so we get the friendly name in /proc/mounts (and tools that read it) -+ENV{DM_NAME}=="?*", RUN{builtin}+="btrfs ready /dev/mapper/$env{DM_NAME}" -+ -+LABEL="btrfs_end" ---- a/Makefile.in -+++ b/Makefile.in -@@ -84,11 +84,15 @@ libbtrfs_headers = send-stream.h send-ut - extent_io.h ioctl.h ctree.h btrfsck.h version.h - TESTS = fsck-tests.sh convert-tests.sh - -+udev_rules = 64-btrfs-dm.rules -+ - prefix ?= @prefix@ - exec_prefix = @exec_prefix@ - bindir = @bindir@ - libdir ?= @libdir@ - incdir = @includedir@/btrfs -+udevdir = @UDEVDIR@ -+udevruledir = ${udevdir}/rules.d - - ifeq ("$(origin V)", "command line") - BUILD_VERBOSE = $(V) -@@ -390,6 +394,10 @@ install: $(libs) $(progs_install) $(INST - cp -a $(lib_links) $(DESTDIR)$(libdir) - $(INSTALL) -m755 -d $(DESTDIR)$(incdir) - $(INSTALL) -m644 $(headers) $(DESTDIR)$(incdir) -+ifneq ($(udevdir),) -+ $(INSTALL) -m755 -d $(DESTDIR)$(udevruledir) -+ $(INSTALL) -m644 $(udev_rules) $(DESTDIR)$(udevruledir) -+endif - - install-static: $(progs_static) $(INSTALLDIRS) - $(INSTALL) -m755 -d $(DESTDIR)$(bindir) ---- a/configure.ac -+++ b/configure.ac -@@ -124,6 +124,8 @@ PKG_STATIC(UUID_LIBS_STATIC, [uuid]) - PKG_CHECK_MODULES(ZLIB, [zlib]) - PKG_STATIC(ZLIB_LIBS_STATIC, [zlib]) - -+PKG_CHECK_VAR([UDEVDIR], [udev], [udevdir]) -+ - dnl lzo library does not provide pkg-config, let use classic way - AC_CHECK_LIB([lzo2], [lzo_version], [ - LZO2_LIBS="-llzo2" diff --git a/btrfs-progs-no-PKG_CHECK_VAR b/btrfs-progs-no-PKG_CHECK_VAR deleted file mode 100644 index 710d0b8..0000000 --- a/btrfs-progs-no-PKG_CHECK_VAR +++ /dev/null @@ -1,29 +0,0 @@ -From: Jeff Mahoney -Subject: btrfs-progs: make PKG_CHECK_VAR optional -Patch-upstream: Never, SLE11-specific - -SLE11 has an old enough pkg-config that PKG_CHECK_VAR doesn't exist. - -We can skip checking it because SLE11 doesn't have systemd's btrfs udev -rules either and 'make install' does the right thing if UDEVDIR is empty. ---- - - configure.ac | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 4af7474..64b1c7a 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -124,7 +124,10 @@ PKG_STATIC(UUID_LIBS_STATIC, [uuid]) - PKG_CHECK_MODULES(ZLIB, [zlib]) - PKG_STATIC(ZLIB_LIBS_STATIC, [zlib]) - --PKG_CHECK_VAR([UDEVDIR], [udev], [udevdir]) -+UDEVDIR= -+m4_ifdef([PKG_CHECK_VAR], -+[PKG_CHECK_VAR([UDEVDIR], [udev], [udevdir])]) -+AC_SUBST(UDEVDIR) - - dnl lzo library does not provide pkg-config, let use classic way - AC_CHECK_LIB([lzo2], [lzo_version], [ diff --git a/btrfs-progs-v4.5.3.tar.gz b/btrfs-progs-v4.5.3.tar.gz deleted file mode 100644 index f4ae574..0000000 --- a/btrfs-progs-v4.5.3.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:638aa93aa8c0cd2d56a4b53052dce94e560beda5cd81f9a047d476ae939b9e1b -size 1468692 diff --git a/btrfs-progs-v4.6.1.tar.gz b/btrfs-progs-v4.6.1.tar.gz new file mode 100644 index 0000000..e147ac1 --- /dev/null +++ b/btrfs-progs-v4.6.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:634dd04bd5b585fbf75eeccaaf5364e72143387f5b4d6dcd8fdf38daecf9e11b +size 1551027 diff --git a/btrfsprogs.changes b/btrfsprogs.changes index 31d435e..0d51435 100644 --- a/btrfsprogs.changes +++ b/btrfsprogs.changes @@ -1,3 +1,36 @@ +------------------------------------------------------------------- +Thu Jul 14 00:00:00 CEST 2016 - dsterba@suse.cz + +- update to 4.6.1 + * fi resize: negative resize argument accepted again (broken + * qgroup rescan: fix skipping when rescan is in progress + * mkfs: initialize stripesize to correct value + * testsuite updates, mostly convert tests + * documentation updates + * btrfs-device, btrfs-restore manual pages enhanced + * misc fixups +- update to 4.6 + * convert - major rewrite: + * fix a long-standing bug that led to mixing data blocks into metadata block + groups + * the workaround was to do full balance after conversion, which was + recommended practice anyway + * explicitly set the lowest supported version of e2fstools to 1.41 + * provide and install udev rules file that addresses problems with device + mapper devices, renames after removal + * send: new option: quiet + * dev usage: report slack space (device size minus filesystem area on the dev) + * image: support DUP + * build: short options to enable debugging builds + * other: + * code cleanups + * build fixes + * more tests and other enhancements +* Removed patches: + * 0001-btrfs-progs-free-qgroup-counts-in-btrfsck.patch + * 0169-btrfs-progs-udev-add-rules-for-dm-devices.patch + * btrfs-progs-no-PKG_CHECK_VAR + ------------------------------------------------------------------- Fri Jun 17 21:16:12 UTC 2016 - mfasheh@suse.com diff --git a/btrfsprogs.spec b/btrfsprogs.spec index 0d82f0a..667be83 100644 --- a/btrfsprogs.spec +++ b/btrfsprogs.spec @@ -24,7 +24,7 @@ %endif Name: btrfsprogs -Version: 4.5.3 +Version: 4.6.1 Release: 0 Summary: Utilities for the Btrfs filesystem License: GPL-2.0 @@ -37,17 +37,14 @@ Source: https://www.kernel.org/pub/linux/kernel/people/kdave/btrfs-progs Source1: boot-btrfs.sh Source4: setup-btrfs.sh -Patch1: 0001-btrfs-progs-free-qgroup-counts-in-btrfsck.patch Patch2: 0002-btrfs-progs-btrfsck-verify-qgroups-above-level-0.patch Patch3: 0003-btrfs-progs-btrfsck-write-corrected-qgroup-info-to-d.patch Patch163: 0163-btrfs-progs-fsck-fix-segfault.patch Patch167: 0167-Btrfs-progs-make-find_and_setup_root-return-an-error.patch Patch168: 0168-Btrfs-progs-don-t-bug-out-if-we-can-t-find-the-last-.patch -Patch169: 0169-btrfs-progs-udev-add-rules-for-dm-devices.patch Patch1000: local-version-override.patch -Patch1001: btrfs-progs-no-PKG_CHECK_VAR BuildRequires: asciidoc BuildRequires: autoconf @@ -115,15 +112,12 @@ build applications to interface with btrfs. %prep %setup -q -n btrfs-progs-v%{version} -%patch1 -p1 %patch2 -p1 %patch3 -p1 %patch163 -p1 %patch167 -p1 %patch168 -p1 -%patch169 -p1 %patch1000 -p1 -%patch1001 -p1 %build ./autogen.sh diff --git a/local-version-override.patch b/local-version-override.patch index 8dda45f..dff57b2 100644 --- a/local-version-override.patch +++ b/local-version-override.patch @@ -6,8 +6,8 @@ Index: btrfs-progs-v4.1/version.sh # Copyright 2008, Oracle # Released under the GNU GPLv2 --v="v4.5.3" -+v="v4.5.3+20160516" +-v="v4.6.1" ++v="v4.6.1+20160714" opt=$1