diff --git a/SOURCES/0140-libmultipath-set-offline-whenever-path-is-not-online.patch b/SOURCES/0140-libmultipath-set-offline-whenever-path-is-not-online.patch new file mode 100644 index 0000000..3af4764 --- /dev/null +++ b/SOURCES/0140-libmultipath-set-offline-whenever-path-is-not-online.patch @@ -0,0 +1,38 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Benjamin Marzinski +Date: Fri, 6 Mar 2026 13:06:50 -0500 +Subject: [PATCH] libmultipath: set offline whenever path is not online or + pending + +multipathd was not setting pp->offline if the path's sysfs state was not +in "offline", "blocked", "quiesce", or "running", even though it was +skipping the checker because the path was actually offline. This means +that it wasn't printing any checker message, since there was no checker +message but the path was not labelled offline. + +Signed-off-by: Benjamin Marzinski +--- + libmultipath/discovery.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/libmultipath/discovery.c b/libmultipath/discovery.c +index eb7a634b..7a09469a 100644 +--- a/libmultipath/discovery.c ++++ b/libmultipath/discovery.c +@@ -1685,6 +1685,7 @@ path_offline (struct path * pp) + memset(buff, 0x0, SCSI_STATE_SIZE); + err = sysfs_attr_get_value(parent, "state", buff, SCSI_STATE_SIZE); + if (err <= 0) { ++ pp->offline = 1; + if (err == -ENXIO) + return PATH_REMOVED; + else +@@ -1719,7 +1720,7 @@ path_offline (struct path * pp) + else if (!strncmp(buff, "live", 4)) + return PATH_UP; + } +- ++ pp->offline = 1; + return PATH_DOWN; + } + diff --git a/SPECS/device-mapper-multipath.spec b/SPECS/device-mapper-multipath.spec index 794ce0e..9ea8152 100644 --- a/SPECS/device-mapper-multipath.spec +++ b/SPECS/device-mapper-multipath.spec @@ -1,7 +1,7 @@ Summary: Tools to manage multipath devices using device-mapper Name: device-mapper-multipath Version: 0.8.4 -Release: 43%{?dist} +Release: 44%{?dist} License: GPLv2 Group: System Environment/Base URL: http://christophe.varoqui.free.fr/ @@ -150,6 +150,7 @@ Patch00136: 0136-multipathd-Added-support-to-handle-FPIN-Li-events-fo.patch Patch00137: 0137-multipathd-Make-sure-to-disable-queueing-if-recovery.patch Patch00138: 0138-libmultipath-foreign-fix-memory-leak-in-nvme-foreign.patch Patch00139: 0139-mpathpersist-Fix-REPORT-CAPABILITIES-output.patch +Patch00140: 0140-libmultipath-set-offline-whenever-path-is-not-online.patch # runtime Requires: %{name}-libs = %{version}-%{release} @@ -354,6 +355,12 @@ fi %{_pkgconfdir}/libdmmp.pc %changelog +* Fri Mar 6 2026 Benjamin Marzinski 0.8.4-44 +- Add 0140-libmultipath-set-offline-whenever-path-is-not-online.patch + * Fixes RHEL-131907 ("multipathd doesn't print checker messages for + some offline path states") +- Resolves: RHEL-131907 + * Wed Nov 19 2025 Benjamin Marzinski 0.8.4-43 - Add 0139-mpathpersist-Fix-REPORT-CAPABILITIES-output.patch * Fixes RHEL-126675 ("RHEL 8.10 mpathpersist -i --report-capabilities