diff --git a/0022-multipath-display-the-correct-configuration-when-dum.patch b/0022-multipath-display-the-correct-configuration-when-dum.patch new file mode 100644 index 0000000000000000000000000000000000000000..1a1d6b5a1efb2b74cab1b0e4f97cdadd2563ff7b --- /dev/null +++ b/0022-multipath-display-the-correct-configuration-when-dum.patch @@ -0,0 +1,54 @@ +From 1c254fdc42fe238fd475f724a948d22d1951791e Mon Sep 17 00:00:00 2001 +From: Kou Wenqi +Date: Mon, 24 Jun 2024 13:40:30 +0800 +Subject: [PATCH] multipath: display the correct configuration when dumpping + config + +"multipath -t" and "multipath -T" might show the wrong +multipathd configuration items "retrigger_tries" and +"force_sync". Make sure they don't. +--- + multipath/main.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/multipath/main.c b/multipath/main.c +index 90f940f..1ab313d 100644 +--- a/multipath/main.c ++++ b/multipath/main.c +@@ -828,6 +828,8 @@ main (int argc, char *argv[]) + struct config *conf; + int retries = -1; + bool enable_foreign = false; ++ int retrigger_tries_ori; ++ int force_sync_ori; + + libmultipath_init(); + if (atexit(dm_lib_exit) || atexit(libmultipath_exit)) +@@ -838,7 +840,9 @@ main (int argc, char *argv[]) + if (atexit(uninit_config)) + condlog(1, "failed to register cleanup handler for config: %m"); + conf = get_multipath_config(); ++ retrigger_tries_ori = conf->retrigger_tries; + conf->retrigger_tries = 0; ++ force_sync_ori = conf->force_sync; + conf->force_sync = 1; + if (atexit(cleanup_vecs)) + condlog(1, "failed to register cleanup handler for vecs: %m"); +@@ -908,10 +912,14 @@ main (int argc, char *argv[]) + conf->find_multipaths = FIND_MULTIPATHS_GREEDY; + break; + case 't': ++ conf->retrigger_tries = retrigger_tries_ori; ++ conf->force_sync = force_sync_ori; + r = dump_config(conf, NULL, NULL) ? RTVL_FAIL : RTVL_OK; + goto out; + case 'T': + cmd = CMD_DUMP_CONFIG; ++ conf->retrigger_tries = retrigger_tries_ori; ++ conf->force_sync = force_sync_ori; + break; + case 'h': + usage(argv[0]); +-- +2.27.0 + diff --git a/multipath-tools.spec b/multipath-tools.spec index dc83c3db59ea4e943dae819dae6b9e6cd8462ce5..dbe5ef4a40281027d51df84fe9ad56ad7504974b 100644 --- a/multipath-tools.spec +++ b/multipath-tools.spec @@ -1,7 +1,7 @@ #needsrootforbuild Name: multipath-tools Version: 0.9.5 -Release: 4 +Release: 5 Summary: Tools to manage multipath devices with the device-mapper License: GPL-2.0-or-later and LGPL-2.0-only URL: http://christophe.varoqui.free.fr/ @@ -30,6 +30,7 @@ Patch18: 0018-libmultipath-io_err_stat-call-io_destroy-inside-free.patch Patch19: 0019-libmultipath-sysfs_set_scsi_tmo-do-nothing-for-ACT_D.patch Patch20: 0020-multipath.conf.5-fix-documentation-for-find_multipat.patch Patch21: 0021-multipath.conf.5-fix-the-description-of-prio_args-fo.patch +Patch22: 0022-multipath-display-the-correct-configuration-when-dum.patch BuildRequires: multipath-tools, libcmocka, libcmocka-devel BuildRequires: gcc, libaio-devel, userspace-rcu-devel, device-mapper-devel >= 1.02.89 @@ -183,6 +184,9 @@ fi %changelog +* Fri Aug 2 2024 kouwenqi - 0.9.5-5 +- multipath: display the correct configuration when dumpping config + * Fri Jul 12 2024 kouwenqi - 0.9.5-4 - multipath.conf.5: fix the description of prio_args for path_latency prio