!219 [sync] PR-213: sync patch multipath-display-the-correct-configuration-when-dum.patch with community

From: @openeuler-sync-bot 
Reviewed-by: @swf504 
Signed-off-by: @swf504
This commit is contained in:
openeuler-ci-bot 2024-09-10 01:48:11 +00:00 committed by Gitee
commit afb190ad8d
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
2 changed files with 29 additions and 36 deletions

View File

@ -1,54 +1,44 @@
From 16108e00550991bec70391a4e51a13dceb847300 Mon Sep 17 00:00:00 2001
From 0802e9dfd27e2333615e8068d7fa55a614bef92e Mon Sep 17 00:00:00 2001
From: Kou Wenqi <kouwenqi@kylinos.cn>
Date: Mon, 5 Aug 2024 14:12:50 +0800
Subject: [PATCH] multipath: display the correct configuration when dumpping
Date: Tue, 13 Aug 2024 10:12:36 +0800
Subject: [PATCH] multipath: display the correct configuration when dumping
config
"multipath -t" and "multipath -T" might show the wrong
multipathd configuration items "retrigger_tries" and
"force_sync". Make sure they don't.
Signed-off-by: Kou Wenqi <kouwenqi@kylinos.cn>
Reviewed-by: Martin Wilck <mwilck@suse.com>
---
multipath/main.c | 8 ++++++++
1 file changed, 8 insertions(+)
multipath/main.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/multipath/main.c b/multipath/main.c
index e964792..2ab302f 100644
index 23182fc..4adf7ee 100644
--- a/multipath/main.c
+++ b/multipath/main.c
@@ -826,6 +826,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))
@@ -836,7 +838,9 @@ main (int argc, char *argv[])
@@ -838,8 +838,6 @@ 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;
- conf->retrigger_tries = 0;
- conf->force_sync = 1;
atexit(cleanup_vecs);
while ((arg = getopt(argc, argv, ":adDcChl::eFfM:v:p:b:BrR:itTquUwW")) != EOF ) {
@@ -911,10 +915,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]);
switch(arg) {
@@ -991,6 +989,11 @@ main (int argc, char *argv[])
libmp_udev_set_sync_support(1);
+ if (cmd != CMD_DUMP_CONFIG) {
+ conf->retrigger_tries = 0;
+ conf->force_sync = 1;
+ }
+
if (init_checkers(conf->multipath_dir)) {
condlog(0, "failed to initialize checkers");
goto out;
--
2.27.0

View File

@ -1,7 +1,7 @@
#needsrootforbuild
Name: multipath-tools
Version: 0.8.7
Release: 17
Release: 18
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/
@ -190,6 +190,9 @@ fi
%changelog
* Tue Aug 27 2024 kouwenqi <kouwenqi@kylinos.cn> - 0.8.7-18
- sync patch32 with community
* Wed Aug 21 2024 Jiaming Zhang <zhangjiaming@cqsoftware.com.cn> - 0.8.7-17
- Added 'Buildarch:noarch' to the help subpackage