Accepting request 395999 from filesystems
1 OBS-URL: https://build.opensuse.org/request/show/395999 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/btrfsprogs?expand=0&rev=73
This commit is contained in:
commit
810a7b5ee1
82
0169-btrfs-progs-udev-add-rules-for-dm-devices.patch
Normal file
82
0169-btrfs-progs-udev-add-rules-for-dm-devices.patch
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
From 8bd39e44efa9fdbf221200b3d680b2d8205c89e9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jeff Mahoney <jeffm@suse.com>
|
||||||
|
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"
|
29
btrfs-progs-no-PKG_CHECK_VAR
Normal file
29
btrfs-progs-no-PKG_CHECK_VAR
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
From: Jeff Mahoney <jeffm@suse.com>
|
||||||
|
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], [
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:0614424a722bc550c0ebafd3e5aa8a9533d50a12b7c166398e0ce6fecde65405
|
|
||||||
size 1447422
|
|
3
btrfs-progs-v4.5.3.tar.gz
Normal file
3
btrfs-progs-v4.5.3.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:638aa93aa8c0cd2d56a4b53052dce94e560beda5cd81f9a047d476ae939b9e1b
|
||||||
|
size 1468692
|
@ -1,3 +1,28 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon May 16 00:00:00 CEST 2016 - dsterba@suse.cz
|
||||||
|
|
||||||
|
- update to 4.5.3
|
||||||
|
* ioctl: fix unaligned access in buffer from TREE_SEARCH; might cause SIGBUS
|
||||||
|
on architectures that do not support unaligned access and do not performa
|
||||||
|
any fixups
|
||||||
|
* improved validation checks of superblock and chunk-related structures
|
||||||
|
* subvolume sync: fix handling of -s option
|
||||||
|
* balance: adjust timing of safety delay countdown with --full-balance
|
||||||
|
* rescue super-recover: fix reversed condition check
|
||||||
|
* check: fix bytes_used accounting
|
||||||
|
* documentation updates: mount options, scrub, send, receive, select-super,
|
||||||
|
check, mkfs
|
||||||
|
* testing: new fuzzed images, for superblock and chunks
|
||||||
|
- fix build failure on 13.1: conditional default for udevdir
|
||||||
|
- fix build failure on SLE11SP4: wrong check in makefile
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon May 9 15:47:01 UTC 2016 - jeffm@suse.com
|
||||||
|
|
||||||
|
- Add udev rules for dm devices (bsc#912170 bsc#888215)
|
||||||
|
- Added patch: 0169-btrfs-progs-udev-add-rules-for-dm-devices.patch
|
||||||
|
- Added patch: btrfs-progs-no-PKG_CHECK_VAR
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue May 3 00:00:00 CEST 2016 - dsterba@suse.cz
|
Tue May 3 00:00:00 CEST 2016 - dsterba@suse.cz
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
Name: btrfsprogs
|
Name: btrfsprogs
|
||||||
Version: 4.5.2
|
Version: 4.5.3
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Utilities for the Btrfs filesystem
|
Summary: Utilities for the Btrfs filesystem
|
||||||
License: GPL-2.0
|
License: GPL-2.0
|
||||||
@ -40,8 +40,10 @@ Source4: setup-btrfs.sh
|
|||||||
Patch163: 0163-btrfs-progs-fsck-fix-segfault.patch
|
Patch163: 0163-btrfs-progs-fsck-fix-segfault.patch
|
||||||
Patch167: 0167-Btrfs-progs-make-find_and_setup_root-return-an-error.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
|
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
|
Patch1000: local-version-override.patch
|
||||||
|
Patch1001: btrfs-progs-no-PKG_CHECK_VAR
|
||||||
|
|
||||||
BuildRequires: asciidoc
|
BuildRequires: asciidoc
|
||||||
BuildRequires: autoconf
|
BuildRequires: autoconf
|
||||||
@ -112,7 +114,9 @@ build applications to interface with btrfs.
|
|||||||
%patch163 -p1
|
%patch163 -p1
|
||||||
%patch167 -p1
|
%patch167 -p1
|
||||||
%patch168 -p1
|
%patch168 -p1
|
||||||
|
%patch169 -p1
|
||||||
%patch1000 -p1
|
%patch1000 -p1
|
||||||
|
%patch1001 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
./autogen.sh
|
./autogen.sh
|
||||||
@ -168,6 +172,11 @@ rm -f %{buildroot}/%{_libdir}/*.a
|
|||||||
install -m 0755 -d %{buildroot}/%{_datadir}/bash-completion/completions
|
install -m 0755 -d %{buildroot}/%{_datadir}/bash-completion/completions
|
||||||
install -m 0644 btrfs-completion %{buildroot}/%{_datadir}/bash-completion/completions/btrfs
|
install -m 0644 btrfs-completion %{buildroot}/%{_datadir}/bash-completion/completions/btrfs
|
||||||
|
|
||||||
|
# 13.1 does not have pkg-config but does have rules
|
||||||
|
%if 0%{?suse_version} == 1310
|
||||||
|
install -m 0755 -d %{buildroot}/usr/lib/udev/rules.d/64-btrfs-dm.rules
|
||||||
|
%endif
|
||||||
|
|
||||||
%if 0%{!?for_debugging:1}
|
%if 0%{!?for_debugging:1}
|
||||||
DEBUG_FILES="/sbin/btrfs-find-root
|
DEBUG_FILES="/sbin/btrfs-find-root
|
||||||
%{_sbindir}/btrfs-find-root
|
%{_sbindir}/btrfs-find-root
|
||||||
@ -257,6 +266,11 @@ done
|
|||||||
%dir %{_datadir}/bash-completion/completions
|
%dir %{_datadir}/bash-completion/completions
|
||||||
%{_datadir}/bash-completion/completions/btrfs
|
%{_datadir}/bash-completion/completions/btrfs
|
||||||
|
|
||||||
|
%if 0%{?suse_version} >= 1200
|
||||||
|
%dir %{_udevrulesdir}
|
||||||
|
%{_udevrulesdir}/64-btrfs-dm.rules
|
||||||
|
%endif
|
||||||
|
|
||||||
%if 0%{?for_debugging:1}
|
%if 0%{?for_debugging:1}
|
||||||
/sbin/btrfs-find-root
|
/sbin/btrfs-find-root
|
||||||
%{_sbindir}/btrfs-find-root
|
%{_sbindir}/btrfs-find-root
|
||||||
|
@ -6,8 +6,8 @@ Index: btrfs-progs-v4.1/version.sh
|
|||||||
# Copyright 2008, Oracle
|
# Copyright 2008, Oracle
|
||||||
# Released under the GNU GPLv2
|
# Released under the GNU GPLv2
|
||||||
|
|
||||||
-v="v4.5.2"
|
-v="v4.5.3"
|
||||||
+v="v4.5.2+20160503"
|
+v="v4.5.3+20160516"
|
||||||
|
|
||||||
opt=$1
|
opt=$1
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user