diff --git a/0211-libmultipath-set-offline-whenever-path-is-not-online.patch b/0211-libmultipath-set-offline-whenever-path-is-not-online.patch new file mode 100644 index 0000000..aea6d31 --- /dev/null +++ b/0211-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 c529f336..225b231e 100644 +--- a/libmultipath/discovery.c ++++ b/libmultipath/discovery.c +@@ -1762,6 +1762,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 +@@ -1796,7 +1797,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 53810a0..b8abae7 100644 --- a/device-mapper-multipath.spec +++ b/device-mapper-multipath.spec @@ -1,6 +1,6 @@ Name: device-mapper-multipath Version: 0.8.7 -Release: 45%{?dist} +Release: 46%{?dist} Summary: Tools to manage multipath devices using device-mapper License: GPLv2 URL: http://christophe.varoqui.free.fr/ @@ -220,6 +220,7 @@ Patch0207: 0207-multipathd-implement-purge-functionality-for-disconn.patch Patch0208: 0208-libmpathpersist-fix-register-retry-status-checking.patch Patch0209: 0209-multipathd-remember-number-of-registered-keys-when-i.patch Patch0210: 0210-libmpathpersist-fix-code-for-skipping-multipathd-pat.patch +Patch0211: 0211-libmultipath-set-offline-whenever-path-is-not-online.patch # runtime Requires: %{name}-libs = %{version}-%{release} @@ -422,6 +423,12 @@ fi %{_pkgconfdir}/libdmmp.pc %changelog +* Fri Mar 6 2026 Benjamin Marzinski - 0.8.7-46 +- Add 0211-libmultipath-set-offline-whenever-path-is-not-online.patch + * Fixes RHEL-151448 ("multipathd doesn't print checker messages for + some offline path states [rhel-9]") +- Resolves: RHEL-151448 + * Thu Feb 19 2026 Benjamin Marzinski - 0.8.7-45 - Add 0208-libmpathpersist-fix-register-retry-status-checking.patch - Add 0209-multipathd-remember-number-of-registered-keys-when-i.patch