device-mapper-multipath-0.8.2-3
Add 0031-multipath-fix-issues-found-by-compiling-with-gcc-10.patch * Patch submitted upstream Resolves bz #1799276
This commit is contained in:
parent
89934ae046
commit
6b2237f96e
119
0031-multipath-fix-issues-found-by-compiling-with-gcc-10.patch
Normal file
119
0031-multipath-fix-issues-found-by-compiling-with-gcc-10.patch
Normal file
@ -0,0 +1,119 @@
|
|||||||
|
From b665961ce1acc273b936ef8593e328c413d35ba7 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Benjamin Marzinski <bmarzins@redhat.com>
|
||||||
|
Date: Tue, 11 Feb 2020 17:01:08 -0600
|
||||||
|
Subject: [PATCH] multipath: fix issues found by compiling with gcc 10
|
||||||
|
|
||||||
|
Compiling with gcc 10 raised a number of warings about buffer sizes,
|
||||||
|
and an error based on declaring ___error1___ in multiple c files,
|
||||||
|
do to it being in structs.h. fix these
|
||||||
|
|
||||||
|
Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
|
||||||
|
---
|
||||||
|
kpartx/dasd.c | 6 +++---
|
||||||
|
libmultipath/print.c | 3 ++-
|
||||||
|
libmultipath/structs.c | 6 ++++++
|
||||||
|
libmultipath/structs.h | 5 -----
|
||||||
|
multipath/main.c | 2 +-
|
||||||
|
5 files changed, 12 insertions(+), 10 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/kpartx/dasd.c b/kpartx/dasd.c
|
||||||
|
index d95d8ca0..42986e78 100644
|
||||||
|
--- a/kpartx/dasd.c
|
||||||
|
+++ b/kpartx/dasd.c
|
||||||
|
@@ -188,7 +188,7 @@ read_dasd_pt(int fd, struct slice all, struct slice *sp, int ns)
|
||||||
|
goto out;
|
||||||
|
}
|
||||||
|
|
||||||
|
- if ((!info.FBA_layout) && (!strcmp(info.type, "ECKD")))
|
||||||
|
+ if ((!info.FBA_layout) && (!strncmp(info.type, "ECKD", 4)))
|
||||||
|
memcpy (&vlabel, data, sizeof(vlabel));
|
||||||
|
else {
|
||||||
|
bzero(&vlabel,4);
|
||||||
|
@@ -218,7 +218,7 @@ read_dasd_pt(int fd, struct slice all, struct slice *sp, int ns)
|
||||||
|
sp[0].size = size - sp[0].start;
|
||||||
|
retval = 1;
|
||||||
|
} else if ((strncmp(type, "VOL1", 4) == 0) &&
|
||||||
|
- (!info.FBA_layout) && (!strcmp(info.type, "ECKD"))) {
|
||||||
|
+ (!info.FBA_layout) && (!strncmp(info.type, "ECKD",4))) {
|
||||||
|
/*
|
||||||
|
* New style VOL1 labeled disk
|
||||||
|
*/
|
||||||
|
@@ -267,7 +267,7 @@ read_dasd_pt(int fd, struct slice all, struct slice *sp, int ns)
|
||||||
|
if (vlabel.ldl_version == 0xf2) {
|
||||||
|
fmt_size = sectors512(vlabel.formatted_blocks,
|
||||||
|
blocksize);
|
||||||
|
- } else if (!strcmp(info.type, "ECKD")) {
|
||||||
|
+ } else if (!strncmp(info.type, "ECKD",4)) {
|
||||||
|
/* formatted w/o large volume support */
|
||||||
|
fmt_size = geo.cylinders * geo.heads
|
||||||
|
* geo.sectors * (blocksize >> 9);
|
||||||
|
diff --git a/libmultipath/print.c b/libmultipath/print.c
|
||||||
|
index 907469ad..61e123de 100644
|
||||||
|
--- a/libmultipath/print.c
|
||||||
|
+++ b/libmultipath/print.c
|
||||||
|
@@ -29,6 +29,7 @@
|
||||||
|
#include "uevent.h"
|
||||||
|
#include "debug.h"
|
||||||
|
#include "discovery.h"
|
||||||
|
+#include "util.h"
|
||||||
|
|
||||||
|
#define MAX(x,y) (((x) > (y)) ? (x) : (y))
|
||||||
|
#define MIN(x,y) (((x) > (y)) ? (y) : (x))
|
||||||
|
@@ -2028,7 +2029,7 @@ int snprint_devices(struct config *conf, char * buff, int len,
|
||||||
|
|
||||||
|
devptr = devpath + 11;
|
||||||
|
*devptr = '\0';
|
||||||
|
- strncat(devptr, blkdev->d_name, PATH_MAX-12);
|
||||||
|
+ strlcpy(devptr, blkdev->d_name, PATH_MAX-11);
|
||||||
|
if (stat(devpath, &statbuf) < 0)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
diff --git a/libmultipath/structs.c b/libmultipath/structs.c
|
||||||
|
index bf7fdd73..46e8bb18 100644
|
||||||
|
--- a/libmultipath/structs.c
|
||||||
|
+++ b/libmultipath/structs.c
|
||||||
|
@@ -20,6 +20,12 @@
|
||||||
|
#include "prioritizers/alua_spc3.h"
|
||||||
|
#include "dm-generic.h"
|
||||||
|
|
||||||
|
+/*
|
||||||
|
+ * _FIND_MULTIPATHS_F must have the same value as YNU_YES.
|
||||||
|
+ * Generate a compile time error if that isn't the case.
|
||||||
|
+ */
|
||||||
|
+char ___error1___[-(_FIND_MULTIPATHS_F != YNU_YES)];
|
||||||
|
+
|
||||||
|
struct adapter_group *
|
||||||
|
alloc_adaptergroup(void)
|
||||||
|
{
|
||||||
|
diff --git a/libmultipath/structs.h b/libmultipath/structs.h
|
||||||
|
index a3adf906..191a5945 100644
|
||||||
|
--- a/libmultipath/structs.h
|
||||||
|
+++ b/libmultipath/structs.h
|
||||||
|
@@ -102,11 +102,6 @@ enum yes_no_undef_states {
|
||||||
|
#define _FIND_MULTIPATHS_F (1 << 1)
|
||||||
|
#define _FIND_MULTIPATHS_I (1 << 2)
|
||||||
|
#define _FIND_MULTIPATHS_N (1 << 3)
|
||||||
|
-/*
|
||||||
|
- * _FIND_MULTIPATHS_F must have the same value as YNU_YES.
|
||||||
|
- * Generate a compile time error if that isn't the case.
|
||||||
|
- */
|
||||||
|
-char ___error1___[-(_FIND_MULTIPATHS_F != YNU_YES)];
|
||||||
|
|
||||||
|
#define find_multipaths_on(conf) \
|
||||||
|
(!!((conf)->find_multipaths & _FIND_MULTIPATHS_F))
|
||||||
|
diff --git a/multipath/main.c b/multipath/main.c
|
||||||
|
index 22aff7be..ed214183 100644
|
||||||
|
--- a/multipath/main.c
|
||||||
|
+++ b/multipath/main.c
|
||||||
|
@@ -1029,7 +1029,7 @@ main (int argc, char *argv[])
|
||||||
|
if (!dev)
|
||||||
|
goto out;
|
||||||
|
|
||||||
|
- strncpy(dev, argv[optind], FILE_NAME_SIZE);
|
||||||
|
+ strlcpy(dev, argv[optind], FILE_NAME_SIZE);
|
||||||
|
if (dev_type != DEV_UEVENT)
|
||||||
|
dev_type = get_dev_type(dev);
|
||||||
|
if (dev_type == DEV_NONE) {
|
||||||
|
--
|
||||||
|
2.17.2
|
||||||
|
|
@ -1,6 +1,6 @@
|
|||||||
Name: device-mapper-multipath
|
Name: device-mapper-multipath
|
||||||
Version: 0.8.2
|
Version: 0.8.2
|
||||||
Release: 2%{?dist}
|
Release: 3%{?dist}
|
||||||
Summary: Tools to manage multipath devices using device-mapper
|
Summary: Tools to manage multipath devices using device-mapper
|
||||||
License: GPLv2
|
License: GPLv2
|
||||||
URL: http://christophe.varoqui.free.fr/
|
URL: http://christophe.varoqui.free.fr/
|
||||||
@ -40,6 +40,7 @@ Patch0027: 0027-RH-warn-on-invalid-regex-instead-of-failing.patch
|
|||||||
Patch0028: 0028-RH-reset-default-find_mutipaths-value-to-off.patch
|
Patch0028: 0028-RH-reset-default-find_mutipaths-value-to-off.patch
|
||||||
Patch0029: 0029-RH-Fix-nvme-compilation-warning.patch
|
Patch0029: 0029-RH-Fix-nvme-compilation-warning.patch
|
||||||
Patch0030: 0030-RH-attempt-to-get-ANA-info-via-sysfs-first.patch
|
Patch0030: 0030-RH-attempt-to-get-ANA-info-via-sysfs-first.patch
|
||||||
|
Patch0031: 0031-multipath-fix-issues-found-by-compiling-with-gcc-10.patch
|
||||||
|
|
||||||
# runtime
|
# runtime
|
||||||
Requires: %{name}-libs = %{version}-%{release}
|
Requires: %{name}-libs = %{version}-%{release}
|
||||||
@ -234,6 +235,11 @@ fi
|
|||||||
%{_pkgconfdir}/libdmmp.pc
|
%{_pkgconfdir}/libdmmp.pc
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Feb 12 2020 Benjamin Marzinski <bmarzins@redhat.com> - 0.8.2-3
|
||||||
|
- Add 0031-multipath-fix-issues-found-by-compiling-with-gcc-10.patch
|
||||||
|
* Patch submitted upstream
|
||||||
|
- Resolves bz #1799276
|
||||||
|
|
||||||
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.2-2
|
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.2-2
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user