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