diff --git a/0088-libmultipath-set-offline-whenever-path-is-not-online.patch b/0088-libmultipath-set-offline-whenever-path-is-not-online.patch new file mode 100644 index 0000000..76a75b3 --- /dev/null +++ b/0088-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: Mon, 23 Feb 2026 18:53:24 -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 289c97c7..247f3a45 100644 +--- a/libmultipath/discovery.c ++++ b/libmultipath/discovery.c +@@ -1825,6 +1825,7 @@ path_offline (struct path * pp) + memset(buff, 0x0, SCSI_STATE_SIZE); + err = sysfs_attr_get_value(parent, "state", buff, sizeof(buff)); + if (!sysfs_attr_value_ok(err, sizeof(buff))) { ++ pp->offline = 1; + if (err == -ENXIO) + return PATH_REMOVED; + else +@@ -1859,7 +1860,7 @@ path_offline (struct path * pp) + else if (!strncmp(buff, "live", 4)) + return PATH_UP; + } +- ++ pp->offline = 1; + return PATH_DOWN; + } + diff --git a/device-mapper-multipath.spec b/device-mapper-multipath.spec index 08b76ac..24af2d2 100644 --- a/device-mapper-multipath.spec +++ b/device-mapper-multipath.spec @@ -1,6 +1,6 @@ Name: device-mapper-multipath Version: 0.9.9 -Release: 18%{?dist} +Release: 19%{?dist} Summary: Tools to manage multipath devices using device-mapper License: GPLv2 URL: http://christophe.varoqui.free.fr/ @@ -97,6 +97,7 @@ Patch0084: 0084-multipathd-implement-purge-functionality-for-disconn.patch Patch0085: 0085-libmpathpersist-fix-register-retry-status-checking.patch Patch0086: 0086-multipathd-remember-number-of-registered-keys-when-i.patch Patch0087: 0087-libmpathpersist-fix-code-for-skipping-multipathd-pat.patch +Patch0088: 0088-libmultipath-set-offline-whenever-path-is-not-online.patch # runtime Requires: %{name}-libs = %{version}-%{release} @@ -306,6 +307,12 @@ fi %{_pkgconfdir}/libdmmp.pc %changelog +* Fri Mar 6 2026 Benjamin Marzinski - 0.9.9-19 +- Add 0088-libmultipath-set-offline-whenever-path-is-not-online.patch + * Fixes RHEL-151447 ("multipathd doesn't print checker messages for + some offline path states") +- Resolves: RHEL-151447 + * Thu Feb 19 2026 Benjamin Marzinski - 0.9.9-18 - Add 0085-libmpathpersist-fix-register-retry-status-checking.patch - Add 0086-multipathd-remember-number-of-registered-keys-when-i.patch