device-mapper-multipath/0053-multipathd-fixup-libdm...

41 lines
1.1 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Martin Wilck <mwilck@suse.com>
Date: Wed, 23 Sep 2020 21:06:13 +0200
Subject: [PATCH] multipathd: fixup libdm deinitialization
With libmp_dm_exit() in place, we can make sure that the
calls are made in the right order.
Reviewed-by: Benjamin Marzinski <bmarzins@redhat.com>
Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
---
multipathd/main.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/multipathd/main.c b/multipathd/main.c
index 7ab3eab8..4c4e2eab 100644
--- a/multipathd/main.c
+++ b/multipathd/main.c
@@ -3220,8 +3220,6 @@ failed:
if (poll_dmevents)
cleanup_dmevent_waiter();
- dm_lib_exit();
-
/* We're done here */
cleanup_pidfile();
condlog(2, "--------shut down-------");
@@ -3318,6 +3316,9 @@ main (int argc, char *argv[])
pthread_cond_init_mono(&config_cond);
+ if (atexit(dm_lib_exit))
+ condlog(3, "failed to register exit handler for libdm");
+
libmultipath_init();
if (atexit(libmultipath_exit))
condlog(3, "failed to register exit handler for libmultipath");
--
2.17.2