Accepting request 894131 from home:mwilck:branches:Base:System
- Update to version 0.8.6+10+suse.47711374: * Github workflows: add CI for SUSE-specific branches - Disabled LTO for multipath-tools * The test for is_valid_path fails if LTO is enabled, just disabling it for %check is insufficient. - Update to version 0.8.6+9+suse.6c05a61: Update to upstream 0.8.6. * add eh_deadline option to avoid endless SCSI error handling * add wwid_recheck option to detect storage configuration changes * add library versioning for libmultipath, libmpathpersist etc. and to libmultipath plugins * move some global symbols to libmultipath (udev, logsink, etc) and provide default implementations for get_multipath_config() etc. This allows simplifiying libmpathpersist_example.c drastically. * fixes for shutdown issues and various race conditions on exit * improve cleanup on exit, fix memory leaks * add libmpathvalid library * fixes for SAS expanders (bsc#1178377, bsc#1178379, bsc#1177081) * Avoid access to root FS while queueing IO (bsc#1178049, bsc#1181234) * lots of bug fixes, additions to built-in hardware table, and CI improvements (bsc#1186212) * kpartx: free loop device after listing partitions (boo#1107187) Bug fixes on top of 0.8.5 mentioned below are also included in this upstream version. (bsc#1182072, bsc#1177371) (bsc#1181435, bsc#1183666) OBS-URL: https://build.opensuse.org/request/show/894131 OBS-URL: https://build.opensuse.org/package/show/Base:System/multipath-tools?expand=0&rev=253
This commit is contained in:
parent
2f6438df20
commit
a8a3fc0b93
@ -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">633836e481465d042d7707b498678d3cf8216e2e</param></service></servicedata>
|
<param name="changesrevision">47711374a3d8582b68b3cd76d26ba6bb4d652e26</param></service></servicedata>
|
41
libmpathpersist-example-old.c
Normal file
41
libmpathpersist-example-old.c
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
/*
|
||||||
|
* 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;
|
||||||
|
}
|
@ -1,40 +1,25 @@
|
|||||||
/*
|
/*
|
||||||
* This is a minimal skeleton for code using libmpathpersist.
|
* This is a minimal skeleton for code using libmpathpersist.
|
||||||
* Compile with "-lmpathpersist -lmultipath -ludev".
|
* Compile with "-lmpathpersist -lmultipath -lmpathcmd".
|
||||||
*
|
*
|
||||||
* Header files for libmultipath are intentionally not included
|
* Header files for libmultipath are intentionally not included
|
||||||
* in the multipath-tools-devel package, because libmultipath has
|
* in the multipath-tools-devel package, because libmultipath has
|
||||||
* no well defined API for external programs at this time.
|
* no well defined API for external programs at this time.
|
||||||
|
*
|
||||||
|
* With multipath-tools 0.8.6, the sample program can be drastically
|
||||||
|
* simplified, see below. Compare with libmpathpersist-example-old.c
|
||||||
|
* for 0.8.5 and older. Note that the old code can still be used.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <mpath_persist.h>
|
#include <mpath_persist.h>
|
||||||
#include <libudev.h>
|
#include <libudev.h>
|
||||||
|
|
||||||
struct udev *udev;
|
struct config *conf;
|
||||||
/*
|
|
||||||
* 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)
|
int main(void)
|
||||||
{
|
{
|
||||||
udev = udev_new();
|
|
||||||
conf = mpath_lib_init();
|
conf = mpath_lib_init();
|
||||||
if(!conf) {
|
if(!conf) {
|
||||||
udev_unref(udev);
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:10ae532b22bd80abaa610c2311f1096f441561d2e234f7c4d8f27fd6fab4dec1
|
|
||||||
size 2496524
|
|
3
multipath-tools-0.8.6+10+suse.4771137.obscpio
Normal file
3
multipath-tools-0.8.6+10+suse.4771137.obscpio
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:c899edc6588fb48f5b53459a0e80ccbb1a91147e099935c17cbae46203e05989
|
||||||
|
size 2608140
|
@ -1,3 +1,42 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue May 18 17:43:13 UTC 2021 - Martin Wilck <mwilck@suse.com>
|
||||||
|
|
||||||
|
- Update to version 0.8.6+10+suse.47711374:
|
||||||
|
* Github workflows: add CI for SUSE-specific branches
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 2 00:01:23 UTC 2021 - Martin Wilck <mwilck@suse.com>
|
||||||
|
|
||||||
|
- Disabled LTO for multipath-tools
|
||||||
|
* The test for is_valid_path fails if LTO is enabled, just
|
||||||
|
disabling it for %check is insufficient.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Apr 01 21:00:32 UTC 2021 - mwilck@suse.com
|
||||||
|
|
||||||
|
- Update to version 0.8.6+9+suse.6c05a61:
|
||||||
|
Update to upstream 0.8.6.
|
||||||
|
|
||||||
|
* add eh_deadline option to avoid endless SCSI error handling
|
||||||
|
* add wwid_recheck option to detect storage configuration changes
|
||||||
|
* add library versioning for libmultipath, libmpathpersist etc. and
|
||||||
|
to libmultipath plugins
|
||||||
|
* move some global symbols to libmultipath (udev, logsink, etc)
|
||||||
|
and provide default implementations for get_multipath_config() etc.
|
||||||
|
This allows simplifiying libmpathpersist_example.c drastically.
|
||||||
|
* fixes for shutdown issues and various race conditions on exit
|
||||||
|
* improve cleanup on exit, fix memory leaks
|
||||||
|
* add libmpathvalid library
|
||||||
|
* fixes for SAS expanders (bsc#1178377, bsc#1178379, bsc#1177081)
|
||||||
|
* Avoid access to root FS while queueing IO (bsc#1178049,
|
||||||
|
bsc#1181234)
|
||||||
|
* lots of bug fixes, additions to built-in hardware table, and
|
||||||
|
CI improvements (bsc#1186212)
|
||||||
|
* kpartx: free loop device after listing partitions (boo#1107187)
|
||||||
|
|
||||||
|
Bug fixes on top of 0.8.5 mentioned below are also included in
|
||||||
|
this upstream version.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Apr 01 11:01:34 UTC 2021 - mwilck@suse.com
|
Thu Apr 01 11:01:34 UTC 2021 - mwilck@suse.com
|
||||||
|
|
||||||
@ -18,14 +57,14 @@ Fri Mar 12 14:53:41 UTC 2021 - mwilck@suse.com
|
|||||||
|
|
||||||
- Update to version 0.8.5+26+suse.2cbedfd:
|
- Update to version 0.8.5+26+suse.2cbedfd:
|
||||||
Avoid "illegal request" errors on non-RDAC storage
|
Avoid "illegal request" errors on non-RDAC storage
|
||||||
(bsc#bsc#1182072, bsc#1177371)
|
(bsc#1182072, bsc#1177371)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Mar 10 10:16:38 UTC 2021 - mwilck@suse.com
|
Wed Mar 10 10:16:38 UTC 2021 - mwilck@suse.com
|
||||||
|
|
||||||
- Update to version 0.8.5+23+suse.c11b054:
|
- Update to version 0.8.5+23+suse.c11b054:
|
||||||
* multipath -U: reduce log level of "adding new path" message
|
* multipath -U: reduce log level of "adding new path" message
|
||||||
(bsc#1181435)
|
(bsc#1181435, bsc#1183666)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Feb 10 14:30:15 UTC 2021 - mwilck@suse.com
|
Wed Feb 10 14:30:15 UTC 2021 - mwilck@suse.com
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
name: multipath-tools
|
name: multipath-tools
|
||||||
version: 0.8.5+30+suse.633836e
|
version: 0.8.6+10+suse.4771137
|
||||||
mtime: 1617050092
|
mtime: 1618245342
|
||||||
commit: 633836e481465d042d7707b498678d3cf8216e2e
|
commit: 47711374a3d8582b68b3cd76d26ba6bb4d652e26
|
||||||
|
|
||||||
|
@ -15,6 +15,9 @@
|
|||||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
#
|
#
|
||||||
|
|
||||||
|
# The test for libmpathvalid fails with -flto=auto. Just disabling
|
||||||
|
# it for the %check section is not sufficient, unfortunately.
|
||||||
|
%global _lto_cflags %{nil}
|
||||||
|
|
||||||
# Whether to build libdmmp
|
# Whether to build libdmmp
|
||||||
# Default YES except for SLE12 / Leap 42
|
# Default YES except for SLE12 / Leap 42
|
||||||
@ -39,7 +42,7 @@
|
|||||||
%define _sysdir usr/lib
|
%define _sysdir usr/lib
|
||||||
|
|
||||||
Name: multipath-tools
|
Name: multipath-tools
|
||||||
Version: 0.8.5+30+suse.633836e
|
Version: 0.8.6+10+suse.4771137
|
||||||
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
|
License: GPL-2.0-only
|
||||||
@ -52,6 +55,7 @@ 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
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
%{?systemd_requires}
|
%{?systemd_requires}
|
||||||
BuildRequires: libaio-devel
|
BuildRequires: libaio-devel
|
||||||
@ -72,12 +76,13 @@ BuildRequires: pkgconfig(cmocka)
|
|||||||
# For now, we still need to require suse-module-tools
|
# For now, we still need to require suse-module-tools
|
||||||
# See https://github.com/openSUSE/rpm-config-SUSE/pull/6
|
# See https://github.com/openSUSE/rpm-config-SUSE/pull/6
|
||||||
BuildRequires: suse-module-tools
|
BuildRequires: suse-module-tools
|
||||||
Requires(post): suse-module-tools
|
Requires(post): suse-module-tools
|
||||||
Requires: device-mapper >= 1.2.78
|
Requires: device-mapper >= 1.2.78
|
||||||
Requires: kpartx
|
Requires: kpartx
|
||||||
Requires: sg3_utils
|
Requires: sg3_utils
|
||||||
Obsoletes: multipath-tools-rbd <= %{version}
|
Obsoletes: multipath-tools-rbd <= %{version}
|
||||||
PreReq: coreutils grep
|
PreReq: coreutils
|
||||||
|
PreReq: grep
|
||||||
|
|
||||||
%description
|
%description
|
||||||
This package provides the multipath tool and the multipathd daemon
|
This package provides the multipath tool and the multipathd daemon
|
||||||
@ -91,6 +96,7 @@ availability of the map devices.
|
|||||||
# 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
|
||||||
# and it loads prioritizers (to be fixed) and checkers.
|
# and it loads prioritizers (to be fixed) and checkers.
|
||||||
|
|
||||||
%package -n libmpath0
|
%package -n libmpath0
|
||||||
Summary: Libraries for multipath-tools
|
Summary: Libraries for multipath-tools
|
||||||
# This is for libmpathcmd, which is useless without multipathd.
|
# This is for libmpathcmd, which is useless without multipathd.
|
||||||
@ -152,6 +158,7 @@ This package provides development files and documentation for libdmmp.
|
|||||||
%setup -q -n multipath-tools-%{version}
|
%setup -q -n multipath-tools-%{version}
|
||||||
# This must be before autopatch for code 12, otherwise build error
|
# This must be before autopatch for code 12, otherwise build error
|
||||||
cp %{SOURCE4} .
|
cp %{SOURCE4} .
|
||||||
|
cp %{SOURCE5} .
|
||||||
%autopatch -p1
|
%autopatch -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
@ -164,7 +171,6 @@ cp %{SOURCE4} .
|
|||||||
%check
|
%check
|
||||||
# ld fails to resolve cmocka's __wrap symbols with -flto
|
# ld fails to resolve cmocka's __wrap symbols with -flto
|
||||||
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88643
|
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88643
|
||||||
%define _lto_cflags %{nil}
|
|
||||||
make OPTFLAGS="%{optflags}" %{_make_output_sync} %{?_smp_mflags} test
|
make OPTFLAGS="%{optflags}" %{_make_output_sync} %{?_smp_mflags} test
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
@ -173,7 +179,7 @@ make OPTFLAGS="%{optflags}" %{_make_output_sync} %{?_smp_mflags} test
|
|||||||
mkdir -p %{buildroot}%{_defaultlicensedir}
|
mkdir -p %{buildroot}%{_defaultlicensedir}
|
||||||
mkdir -p %{buildroot}/usr/sbin
|
mkdir -p %{buildroot}/usr/sbin
|
||||||
mkdir -p %{buildroot}/usr/%{_lib}
|
mkdir -p %{buildroot}/usr/%{_lib}
|
||||||
for x in multipath mpathpersist mpathcmd; do
|
for x in multipath mpathpersist mpathcmd mpathvalid; do
|
||||||
rm -f %{buildroot}/%{_lib}/lib$x.so
|
rm -f %{buildroot}/%{_lib}/lib$x.so
|
||||||
ln -sf /%{_lib}/lib$x.so.0 %{buildroot}/usr/%{_lib}/lib$x.so
|
ln -sf /%{_lib}/lib$x.so.0 %{buildroot}/usr/%{_lib}/lib$x.so
|
||||||
done
|
done
|
||||||
@ -238,6 +244,7 @@ exit 0
|
|||||||
/%{_lib}/libmultipath.so.0
|
/%{_lib}/libmultipath.so.0
|
||||||
/%{_lib}/libmpathcmd.so.0
|
/%{_lib}/libmpathcmd.so.0
|
||||||
/%{_lib}/libmpathpersist.so.0
|
/%{_lib}/libmpathpersist.so.0
|
||||||
|
/%{_lib}/libmpathvalid.so.0
|
||||||
/%{_lib}/multipath
|
/%{_lib}/multipath
|
||||||
%license LICENSES/GPL-2.0
|
%license LICENSES/GPL-2.0
|
||||||
%license LICENSES/LGPL-2.0
|
%license LICENSES/LGPL-2.0
|
||||||
@ -249,10 +256,13 @@ exit 0
|
|||||||
/usr/%{_lib}/libmultipath.so
|
/usr/%{_lib}/libmultipath.so
|
||||||
/usr/%{_lib}/libmpathcmd.so
|
/usr/%{_lib}/libmpathcmd.so
|
||||||
/usr/%{_lib}/libmpathpersist.so
|
/usr/%{_lib}/libmpathpersist.so
|
||||||
|
/usr/%{_lib}/libmpathvalid.so
|
||||||
/usr/include/mpath_cmd.h
|
/usr/include/mpath_cmd.h
|
||||||
/usr/include/mpath_persist.h
|
/usr/include/mpath_persist.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
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user