Backport PR #576 to fix udev multipath device check
See https://bugzilla.redhat.com/show_bug.cgi?id=1628192 .
This commit is contained in:
parent
9699a35ff8
commit
fdfe302708
|
@ -0,0 +1,56 @@
|
||||||
|
From b3d9f04f354d2ac21964a637ef42815476b6ff78 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Adam Williamson <awilliam@redhat.com>
|
||||||
|
Date: Thu, 13 Sep 2018 16:40:44 -0700
|
||||||
|
Subject: [PATCH] Fix DM_MULTIPATH_DEVICE_PATH in udev rules
|
||||||
|
|
||||||
|
As we worked out in
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=1628774 , with
|
||||||
|
multipath-tools 0.7.7 or higher, DM_MULTIPATH_DEVICE_PATH gets
|
||||||
|
set to the value 0 for non-multipath devices in some cases.
|
||||||
|
Before 0.7.7, it was always either set to 1 or not set at all.
|
||||||
|
Now it can be set to 0, checks like this:
|
||||||
|
|
||||||
|
ENV{DM_MULTIPATH_DEVICE_PATH}=="?*"
|
||||||
|
|
||||||
|
don't work right any more, because that check will actually
|
||||||
|
match if the value is 0 (it will only not match if the var is
|
||||||
|
not set at all, or is set to an empty string). Instead we should
|
||||||
|
just check if it is set to exactly 1, otherwise assume the device
|
||||||
|
isn't multipath.
|
||||||
|
|
||||||
|
The impact of this is I think quite limited: we only skip two
|
||||||
|
rules if this check matches, and they only affect mdraid devices.
|
||||||
|
On installed systems without any multipath devices, the bug
|
||||||
|
should not happen, because there should be no /etc/multipath.conf
|
||||||
|
and when that file doesn't exist, the multipath rules skip out
|
||||||
|
early and don't wind up setting the value to 0 ever. I think the
|
||||||
|
only cases affected by this are 'generic' environments like live
|
||||||
|
images and installers, and installed systems with multipath
|
||||||
|
devices. In both these cases there will be a /etc/multipath.conf
|
||||||
|
file, so for some devices, the multipath rules will get far
|
||||||
|
enough to set the value to 0. The consequence will be that the
|
||||||
|
UDISKS_MD_* values that these two rules try to set will not get
|
||||||
|
set for devices they *should* get set for. I'm not sure what the
|
||||||
|
further consequences of that are, if any.
|
||||||
|
|
||||||
|
Signed-off-by: Adam Williamson <awilliam@redhat.com>
|
||||||
|
---
|
||||||
|
data/80-udisks2.rules | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/data/80-udisks2.rules b/data/80-udisks2.rules
|
||||||
|
index e8f7c5ee..a64f1cb3 100644
|
||||||
|
--- a/data/80-udisks2.rules
|
||||||
|
+++ b/data/80-udisks2.rules
|
||||||
|
@@ -10,7 +10,7 @@
|
||||||
|
# Skip probing if not a block device or if requested by other rules
|
||||||
|
#
|
||||||
|
SUBSYSTEM!="block", GOTO="udisks_probe_end"
|
||||||
|
-ENV{DM_MULTIPATH_DEVICE_PATH}=="?*", GOTO="udisks_probe_end"
|
||||||
|
+ENV{DM_MULTIPATH_DEVICE_PATH}=="1", GOTO="udisks_probe_end"
|
||||||
|
ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}=="?*", GOTO="udisks_probe_end"
|
||||||
|
|
||||||
|
# MD-RAID (aka Linux Software RAID) members
|
||||||
|
--
|
||||||
|
2.19.0
|
||||||
|
|
10
udisks2.spec
10
udisks2.spec
|
@ -56,11 +56,15 @@
|
||||||
Name: udisks2
|
Name: udisks2
|
||||||
Summary: Disk Manager
|
Summary: Disk Manager
|
||||||
Version: 2.8.0
|
Version: 2.8.0
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
Group: System Environment/Libraries
|
Group: System Environment/Libraries
|
||||||
URL: https://github.com/storaged-project/udisks
|
URL: https://github.com/storaged-project/udisks
|
||||||
Source0: https://github.com/storaged-project/udisks/releases/download/udisks-%{version}/udisks-%{version}.tar.bz2
|
Source0: https://github.com/storaged-project/udisks/releases/download/udisks-%{version}/udisks-%{version}.tar.bz2
|
||||||
|
# https://github.com/storaged-project/udisks/pull/576
|
||||||
|
# Fix udev multipath device check for device-mapper-multipath 0.7.7+
|
||||||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1628192
|
||||||
|
Patch0: 0001-Fix-DM_MULTIPATH_DEVICE_PATH-in-udev-rules.patch
|
||||||
|
|
||||||
BuildRequires: glib2-devel >= %{glib2_version}
|
BuildRequires: glib2-devel >= %{glib2_version}
|
||||||
BuildRequires: gobject-introspection-devel >= %{gobject_introspection_version}
|
BuildRequires: gobject-introspection-devel >= %{gobject_introspection_version}
|
||||||
|
@ -264,6 +268,7 @@ This package contains module for VDO management.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n udisks-%{version}
|
%setup -q -n udisks-%{version}
|
||||||
|
%patch0 -p1
|
||||||
sed -i udisks/udisks2.conf.in -e "s/encryption=luks1/encryption=%{default_luks_encryption}/"
|
sed -i udisks/udisks2.conf.in -e "s/encryption=luks1/encryption=%{default_luks_encryption}/"
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
@ -437,6 +442,9 @@ udevadm trigger
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Sep 14 2018 Adam Williamson <awilliam@redhat.com> - 2.8.0-2
|
||||||
|
- Backport PR #576 to fix udev multipath device check (see RHBZ#1628192)
|
||||||
|
|
||||||
* Mon Aug 13 2018 Tomas Bzatek <tbzatek@redhat.com> - 2.8.0-1
|
* Mon Aug 13 2018 Tomas Bzatek <tbzatek@redhat.com> - 2.8.0-1
|
||||||
- Version 2.8.0
|
- Version 2.8.0
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue