Sync from SUSE:SLFO:Main multipath-tools revision 7df47955bd05493d503fb53dfbc32cc1

This commit is contained in:
Adrian Schröter 2024-08-26 18:06:29 +02:00
parent 31ff46d79e
commit a6ad5d9ade
11 changed files with 163 additions and 75 deletions

View File

@ -5,8 +5,10 @@
<param name="url">https://github.com/openSUSE/multipath-tools.git</param> <param name="url">https://github.com/openSUSE/multipath-tools.git</param>
<param name="filename">multipath-tools</param> <param name="filename">multipath-tools</param>
<param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@+suse.%h</param> <param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@+suse.%h</param>
<param name="revision">factory</param> <param name="revision">sles15-sp6</param>
<param name="match-tag">0.[0-9].[0-9]</param> <param name="match-tag">0.[0-9].[0-9]*</param>
<param name="versionrewrite-pattern">[-]pre\.([0-9])</param>
<param name="versionrewrite-replacement">~\1</param>
<param name="changesgenerate">enable</param> <param name="changesgenerate">enable</param>
</service> </service>
<service name="set_version" mode="manual"/> <service name="set_version" mode="manual"/>

View File

@ -1,4 +1,4 @@
<servicedata> <servicedata>
<service name="tar_scm"> <service name="tar_scm">
<param name="url">https://github.com/openSUSE/multipath-tools.git</param> <param name="url">https://github.com/openSUSE/multipath-tools.git</param>
<param name="changesrevision">f07325e85d5d9444ac4c816f75d2ce67af52af93</param></service></servicedata> <param name="changesrevision">d504d833c678c52886e7762254658896ce6a8e7b</param></service></servicedata>

View File

@ -1,41 +0,0 @@
/*
* This is a minimal skeleton for code using libmpathpersist.
* Compile with "-lmpathpersist -lmultipath -ludev".
*
* Header files for libmultipath are intentionally not included
* in the multipath-tools-devel package, because libmultipath has
* no well defined API for external programs at this time.
*/
#include <mpath_persist.h>
#include <libudev.h>
struct udev *udev;
/*
* logsink determines where libmultipath log messages go
* 1 - log to syslog only
* -1 - log to syslog and stderr
* 0 - log to syslog and stderr, with timestamps
*/
int logsink;
static struct config *conf;
struct config *get_multipath_config(void) {
return conf;
}
void put_multipath_config(struct config* c)
{
}
int main(void)
{
udev = udev_new();
conf = mpath_lib_init();
if(!conf) {
udev_unref(udev);
return 1;
}
return 0;
}

10
modprobe_d-scsi_dh.conf Normal file
View File

@ -0,0 +1,10 @@
# Make sure scsi device handlers are loaded before any SCSI host adapter
# drivers. This requires loading sd_mod before host adapters, which
# is ensured by the scsi_mod softdep below.
softdep sd_mod pre: scsi_dh_alua scsi_dh_rdac scsi_dh_emc
# Note that there can be only one softdep per module, and earlier
# directives take precedence. 10-scsi.conf is shipped by suse-module-tools
# in some SUSE releases; it will override the scsi_mod softdep below.
# (but it will also make sure that sd_mod is loaded early).
softdep scsi_mod post: sd_mod

View File

@ -1,2 +1,2 @@
# Make sure the tmpfiles entry exists in initramfs already # Make sure the tmpfiles entry and rules files exist in initramfs already
install_items+=" @TMPFILESDIR@/multipath.conf " install_items+=" @TMPFILESDIR@/multipath.conf @UDEVRULESDIR@/99-z-dm-mpath-late.rules "

Binary file not shown.

BIN
multipath-tools-0.9.8+88+suse.d504d83.obscpio (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -1,3 +1,123 @@
-------------------------------------------------------------------
Thu Apr 11 15:22:02 UTC 2024 - Martin Wilck <mwilck@suse.com>
- Update to version 0.9.8+88+suse.d504d83:
* Revert "libmultipath: fix max_sectors_kb on adding path"
(bsc#1222458)
-------------------------------------------------------------------
Tue Mar 5 20:19:12 UTC 2024 - Martin Wilck <mwilck@suse.com>
- Update to version 0.9.8+87+suse.f72b9f3:
* fix misspelled DM_UDEV_DISABLE_OTHER_RULES_FLAG in udev rules
(bsc#1220810)
-------------------------------------------------------------------
Tue Feb 27 10:12:35 UTC 2024 - Martin Wilck <mwilck@suse.com>
- Remove libmpathpersist-example-old.c, which has been obsolete
since multipath-tools 0.8.6.
-------------------------------------------------------------------
Mon Feb 26 11:57:03 UTC 2024 - Martin Wilck <mwilck@suse.com>
- Update to version 0.9.8+83+suse.bcae610 (bsc#1220374)
* multipath-tools: added NEWS.md
-------------------------------------------------------------------
Thu Feb 15 11:00:59 UTC 2024 - Martin Wilck <mwilck@suse.com>
- Update to version 0.9.8~1+82+suse.dcd98a3:
* Adapt package version such that it shows as a 0.9.8 prerelease
* Add missing udev rules file
-------------------------------------------------------------------
Wed Feb 14 20:52:13 UTC 2024 - Martin Wilck <mwilck@suse.com>
- Update to version 0.9.7+148+suse.9780ae0:
* 11-dm-mpath.rules: Fix quoting mistake (bsc#1219142)
-------------------------------------------------------------------
Mon Feb 12 15:33:58 UTC 2024 - Martin Wilck <mwilck@suse.com>
- Update to version 0.9.7+148+suse.7d9953e.obscpio
* This is a multipath-tools 0.9.8 pre-release
* fix fast_io_fail for Infinibox (bsc#1219348)
* Fix activation of LVM volume groups during coldplug (bsc#1219142)
-------------------------------------------------------------------
Mon Feb 12 15:09:47 UTC 2024 - Martin Wilck <mwilck@suse.com>
- Update to version 0.9.7+140+suse.2d78457:
* This is a multipath-tools 0.9.8 pre-release
* Socket activation via multipathd.socket has been disabled by default
because it has undesirable side effects on systems without multipath.
Users with multipath hardware should enable multipathd.service
* The restorequeueing CLI command now only enables queueing if
disablequeueing had been sent before
* Avoid multipathd hang during map flush
* multipathd now tracks the queueing mode of maps in its internal features string
* Improve error messages in 'multipathd -k'
* Fix segfault in autoresize code (bsc#1219289)
* Fix missing map reloads (bsc#1219796)
* Documentation fixes, spelling fixes, minor code fixes
-------------------------------------------------------------------
Fri Jan 5 14:32:11 UTC 2024 - Martin Wilck <mwilck@suse.com>
- Update to version 0.9.7+93+suse.e2f2272:
* fix ANA prioritizer enablement logic (bsc#1218326)
* avoid setting queue_if_no_path on multipath maps for which the
no_path_retry timeout has expired
* the interactive commands "restorequeueing map X" and
"restorequeing maps" now only affect maps that had queueing
manually disabled using "disablequeuing maps" or
"disablequeuing map X" beforehand
* Spelling fixes
-------------------------------------------------------------------
Tue Nov 21 20:46:40 UTC 2023 - Martin Wilck <mwilck@suse.com>
- Update to version 0.9.7+76+suse.5f857af:
* Update to upstream 0.9.7 (jsc#PED-6464)
* added max_retries config option to limit SCSI retries
* added auto_resize config option to enable resizing multipath maps automatically
* fixed memory and error handling for code using aio (marginal path code,
directio path checker)
* dropped modules-load.d/multipath.conf; replaced by a dependency on
modprobe@dm-multipath.service (systemd >= 245: SLE15-SP3 and later only)
and a softdep on sd_mod for the SCSI device handlers
(bsc#1217377)
* On SLE/Leap suse-module-tools doesn't ship a scsi_mod->sd_mod softdep yet.
Add it here, too. It will be overridden by s-m-t when it's added there.
* drop usr_prefix= setting in SLE build recipes (set to /usr by upstream
automatically)
-------------------------------------------------------------------
Wed Oct 25 10:46:30 UTC 2023 - Martin Wilck <mwilck@suse.com>
- Update to version 0.9.6+115+suse.07776fb
* multipathd: Added support to handle FPIN-Li events for FC-NVMe
-------------------------------------------------------------------
Fri Sep 15 12:36:30 UTC 2023 - Martin Wilck <mwilck@suse.com>
- Update to version 0.9.6+110+suse.5dfdf35:
* The options "bindings_file", "prkeys_file", and "wwids_file",
which have been deprecated since multipath-tools 0.8.8,
aren't supported any more. The paths to these files are now
hard-coded to "bindings", "prkeys" and "wwids" under
/etc/multipath.
* Strictly avoid assigning map aliases that are already taken
(bsc#1213265)
* Improve handling of user-friendly names
* avoid "multipath -d" (dry-run) changing SCSI timeouts in sysfs
(bsc#1213809)
- spec file:
* adapt prefix values to upstream changes
* fix compilation flags for "make check"
* pass EXTRAVERSION to build
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Sep 12 06:48:40 UTC 2023 - Martin Wilck <mwilck@suse.com> Tue Sep 12 06:48:40 UTC 2023 - Martin Wilck <mwilck@suse.com>
@ -16,6 +136,7 @@ Wed Sep 6 13:51:42 UTC 2023 - Martin Wilck <mwilck@suse.com>
- Update to version 0.9.6+70+suse.63925e8: - Update to version 0.9.6+70+suse.63925e8:
Upstream feature additions and bug fixes: Upstream feature additions and bug fixes:
* ignore nvme devices by default if nvme native multipath is enabled * ignore nvme devices by default if nvme native multipath is enabled
(bsc#1212854)
* add "group_by_tpg" path_grouping_policy * add "group_by_tpg" path_grouping_policy
* add config options "detect_pgpolicy" and "detect_pgpolicy_use_tpg" * add config options "detect_pgpolicy" and "detect_pgpolicy_use_tpg"
* libmultipath: add ALUA tpg path wildcard "%A" * libmultipath: add ALUA tpg path wildcard "%A"

View File

@ -1,4 +1,4 @@
name: multipath-tools name: multipath-tools
version: 0.9.6+71+suse.f07325e version: 0.9.8+88+suse.d504d83
mtime: 1694069633 mtime: 1712848814
commit: f07325e85d5d9444ac4c816f75d2ce67af52af93 commit: d504d833c678c52886e7762254658896ce6a8e7b

View File

@ -19,10 +19,10 @@
%global _lto_cflags %{nil} %global _lto_cflags %{nil}
%global _make_output_sync -Orecurse %global _make_output_sync -Orecurse
# multipath-tools auto-detects support for -D_FORTFY_SOURCE. # multipath-tools auto-detects support for -D_FORTIFY_SOURCE.
# This will lead to a compilation error if the distro overrides # This will lead to a compilation error if the distro overrides
# -D_FORTIFY_SOURCE in optflags, unless we precede it with -U # -D_FORTIFY_SOURCE in optflags, unless it's preceded with -U_FORTIFY_SOURCE
%global mp_optflags %(echo %{optflags} | sed 's/-D_FORTIFY_SOURCE=[0-9]/-U_FORTIFY_SOURCE &/') %global mp_optflags %(echo %{optflags} | sed '/-U_FORTIFY_SOURCE/!s/-D_FORTIFY_SOURCE=[0-9]/-U_FORTIFY_SOURCE &/')
# Whether to build libdmmp - default YES # Whether to build libdmmp - default YES
%bcond_without libdmmp %bcond_without libdmmp
@ -35,20 +35,20 @@
%define libdmmp_version %(echo %{_libdmmp_version} | tr . _) %define libdmmp_version %(echo %{_libdmmp_version} | tr . _)
Name: multipath-tools Name: multipath-tools
Version: 0.9.6+71+suse.f07325e Version: 0.9.8+88+suse.d504d83
Release: 0 Release: 0
Summary: Tools to Manage Multipathed Devices with the device-mapper Summary: Tools to Manage Multipathed Devices with the device-mapper
License: GPL-2.0-only AND GPL-3.0-or-later License: GPL-2.0-only AND GPL-3.0-or-later
Group: System/Base Group: System/Base
URL: http://christophe.varoqui.free.fr/ URL: http://christophe.varoqui.free.fr/
Source: multipath-tools-%{version}.tar Source: multipath-tools-%{version}.tar
Source1: multipath.conf # modprobe.d configuration file
Source1: modprobe_d-scsi_dh.conf
# SUSE policy: disable partition deletion by default # SUSE policy: disable partition deletion by default
Source2: dont-del-part-nodes.rules Source2: dont-del-part-nodes.rules
# Dracut conf file to make sure 11-dm-parts.rules is included in initrd # Dracut conf file to make sure 11-dm-parts.rules is included in initrd
Source3: dm-parts.conf Source3: dm-parts.conf
Source4: libmpathpersist-example.c Source4: libmpathpersist-example.c
Source5: libmpathpersist-example-old.c
Source6: multipath-dracut.conf Source6: multipath-dracut.conf
BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRoot: %{_tmppath}/%{name}-%{version}-build
%{?systemd_requires} %{?systemd_requires}
@ -87,9 +87,6 @@ monitors path devices for failure, removal, or addition, and applies
the necessary changes to the multipath maps to ensure continuous the necessary changes to the multipath maps to ensure continuous
availability of the map devices. availability of the map devices.
# Currently, it makes no sense to split out libmpathpersist and libmpathcmd # Currently, it makes no sense to split out libmpathpersist and libmpathcmd
# separately. libmultipath has no stable API at all, and it depends # separately. libmultipath has no stable API at all, and it depends
# on libmpathcmd (to be fixed). libmpathpersist depends on libmultipath # on libmpathcmd (to be fixed). libmpathpersist depends on libmultipath
@ -149,21 +146,22 @@ Requires: libdmmp%{libdmmp_version} = %{version}
%description -n libdmmp-devel %description -n libdmmp-devel
This package provides development files and documentation for libdmmp. This package provides development files and documentation for libdmmp.
%define makeflags %{!?with_libdmmp:ENABLE_LIBDMMP=0} %global extraversion %(echo %{version} | sed 's/^[^+]*//')
%define makeflags EXTRAVERSION="%{extraversion}" %{!?with_libdmmp:ENABLE_LIBDMMP=0}
%if 0%{?suse_version} < 1550 %if 0%{?suse_version} < 1550
%define dirflags LIB=%{_lib} usr_prefix=%{_prefix} systemd_prefix=%{_prefix} %define dirflags LIB=%{_lib}
%define sbindir /sbin %define sbindir /sbin
%define libdir /%{_lib} %define libdir /%{_lib}
%else %else
%define dirflags LIB=%{_lib} prefix=%{_prefix} configdir=%{_sysconfdir}/multipath/conf.d %define dirflags LIB=%{_lib} prefix=%{_prefix} etc_prefix=
%define sbindir %{_sbindir} %define sbindir %{_sbindir}
%define libdir %{_libdir} %define libdir %{_libdir}
%endif %endif
%prep %prep
%setup -q -n multipath-tools-%{version} %setup -q -n multipath-tools-%{version}
cp %{SOURCE4} . cp %{SOURCE4} .
cp %{SOURCE5} .
%autopatch -p1 %autopatch -p1
%build %build
@ -172,7 +170,7 @@ cp %{SOURCE5} .
%if 0%{?with_check} == 1 %if 0%{?with_check} == 1
%check %check
%{make_build} OPTFLAGS="%{mp_optflags}" V=1 test %{make_build} OPTFLAGS="%{mp_optflags}" %{dirflags} %{makeflags} V=1 test
%endif %endif
%install %install
@ -187,12 +185,11 @@ for x in mpathutil multipath mpathpersist mpathcmd mpathvalid; do
done done
%endif %endif
ln -sf service %{buildroot}/usr/sbin/rcmultipathd ln -sf service %{buildroot}/usr/sbin/rcmultipathd
mkdir -p %{buildroot}/usr/lib/modules-load.d install -m 644 -D %{SOURCE1} %{buildroot}/usr/lib/modprobe.d/90-scsi_dh.conf
install -m 644 -D %{SOURCE1} "%{buildroot}/usr/lib/modules-load.d/multipath.conf"
install -m 644 %{SOURCE2} %{buildroot}%{_udevrulesdir}/00-dont-del-part-nodes.rules install -m 644 %{SOURCE2} %{buildroot}%{_udevrulesdir}/00-dont-del-part-nodes.rules
install -m 644 -D %{SOURCE3} %{buildroot}/usr/lib/dracut/dracut.conf.d/dm-parts.conf install -m 644 -D %{SOURCE3} %{buildroot}/usr/lib/dracut/dracut.conf.d/dm-parts.conf
install -m 644 -D %{SOURCE6} %{buildroot}/usr/lib/dracut/dracut.conf.d/multipath.conf install -m 644 -D %{SOURCE6} %{buildroot}/usr/lib/dracut/dracut.conf.d/multipath.conf
sed -i 's,@TMPFILESDIR@,%{_tmpfilesdir},' %{buildroot}/usr/lib/dracut/dracut.conf.d/multipath.conf sed -i 's,@TMPFILESDIR@,%{_tmpfilesdir},;s,@UDEVRULESDIR@,%{_udevrulesdir},' %{buildroot}/usr/lib/dracut/dracut.conf.d/multipath.conf
%post -n libmpath0 -p %{run_ldconfig} %post -n libmpath0 -p %{run_ldconfig}
%postun -n libmpath0 -p %{run_ldconfig} %postun -n libmpath0 -p %{run_ldconfig}
@ -224,10 +221,12 @@ exit 0
%files %files
%doc README.md %doc README.md
%doc NEWS.md
%license LICENSES/GPL-2.0 %license LICENSES/GPL-2.0
%license LICENSES/GPL-3.0 %license LICENSES/GPL-3.0
%{_udevrulesdir}/11-dm-mpath.rules %{_udevrulesdir}/11-dm-mpath.rules
%{_udevrulesdir}/56-multipath.rules %{_udevrulesdir}/56-multipath.rules
%{_udevrulesdir}/99-z-dm-mpath-late.rules
%{sbindir}/multipath %{sbindir}/multipath
%{sbindir}/multipathd %{sbindir}/multipathd
%{sbindir}/multipathc %{sbindir}/multipathc
@ -235,11 +234,14 @@ exit 0
/usr/sbin/rcmultipathd /usr/sbin/rcmultipathd
%{_unitdir}/multipathd.service %{_unitdir}/multipathd.service
%{_unitdir}/multipathd.socket %{_unitdir}/multipathd.socket
%if 0%{?suse_version} < 1550 && 0%{?sle_version} < 150300
%dir /usr/lib/modules-load.d %dir /usr/lib/modules-load.d
/usr/lib/modules-load.d/multipath.conf /usr/lib/modules-load.d/multipath.conf
%endif
%dir /usr/lib/dracut %dir /usr/lib/dracut
%dir /usr/lib/dracut/dracut.conf.d %dir /usr/lib/dracut/dracut.conf.d
/usr/lib/dracut/dracut.conf.d/multipath.conf /usr/lib/dracut/dracut.conf.d/multipath.conf
/usr/lib/modprobe.d/90-scsi_dh.conf
%{_tmpfilesdir}/multipath.conf %{_tmpfilesdir}/multipath.conf
%{_mandir}/man8/multipath.8* %{_mandir}/man8/multipath.8*
%{_mandir}/man5/multipath.conf.5* %{_mandir}/man5/multipath.conf.5*
@ -271,7 +273,6 @@ exit 0
/usr/include/mpath_valid.h /usr/include/mpath_valid.h
%{_mandir}/man3/mpath_persistent_* %{_mandir}/man3/mpath_persistent_*
%doc libmpathpersist-example.c %doc libmpathpersist-example.c
%doc libmpathpersist-example-old.c
%files -n kpartx %files -n kpartx
%license LICENSES/GPL-2.0 %license LICENSES/GPL-2.0

View File

@ -1,5 +0,0 @@
# Load device-handler and multipath module at boot
scsi_dh_alua
scsi_dh_emc
scsi_dh_rdac
dm-multipath