device-mapper-multipath/0057-multipathd-move-cleanup_-prio-checkers-foreign-to-li.patch
Benjamin Marzinski b05147c356 device-mapper-multipath-0.8.5-6
Change patch format to remove Git version
  * Patches 0001-0122 only have the patch format modified
Update to the head of the upstream staging branch plus redhat patches
  * Patches 0123-0134 & 1036-0142 are from the upstream staging branch
  * Patches 0143-1046 have been submitted upstream
  * Patch 0156 is a Red Hat only patch. Red Hat udev rules set ID_SERIAL
    from 60-persistent-storage.rules instead of 55-scsi-sg3_id.rules.
    Multipath's parse_vpd_pg83() function needs to match the ID_SERIAL
    value from udev.
Rename files
  * Previous patches 0123-0132 are now patches 1035 & 0147-0155
2021-03-26 13:33:56 -05:00

91 lines
2.4 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Martin Wilck <mwilck@suse.com>
Date: Wed, 23 Sep 2020 21:57:22 +0200
Subject: [PATCH] multipathd: move cleanup_{prio,checkers,foreign} to
libmultipath_exit
This requires another major ABI bump.
Reviewed-by: Benjamin Marzinski <bmarzins@redhat.com>
Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
---
libmpathpersist/mpath_persist.c | 2 --
libmultipath/config.c | 4 ++++
libmultipath/libmultipath.version | 5 +----
multipathd/main.c | 3 ---
4 files changed, 5 insertions(+), 9 deletions(-)
diff --git a/libmpathpersist/mpath_persist.c b/libmpathpersist/mpath_persist.c
index e1d1cb76..9ebf91dd 100644
--- a/libmpathpersist/mpath_persist.c
+++ b/libmpathpersist/mpath_persist.c
@@ -78,8 +78,6 @@ mpath_lib_init (void)
static void libmpathpersist_cleanup(void)
{
- cleanup_prio();
- cleanup_checkers();
libmultipath_exit();
dm_lib_exit();
}
diff --git a/libmultipath/config.c b/libmultipath/config.c
index b9cb4131..52b1447b 100644
--- a/libmultipath/config.c
+++ b/libmultipath/config.c
@@ -26,6 +26,7 @@
#include "devmapper.h"
#include "mpath_cmd.h"
#include "propsel.h"
+#include "foreign.h"
/*
* We don't support re-initialization after
@@ -60,6 +61,9 @@ int libmultipath_init(void)
static void _libmultipath_exit(void)
{
libmultipath_exit_called = true;
+ cleanup_foreign();
+ cleanup_checkers();
+ cleanup_prio();
libmp_dm_exit();
udev_unref(udev);
}
diff --git a/libmultipath/libmultipath.version b/libmultipath/libmultipath.version
index 84beb7f0..800cff22 100644
--- a/libmultipath/libmultipath.version
+++ b/libmultipath/libmultipath.version
@@ -31,7 +31,7 @@
* The new version inherits the previous ones.
*/
-LIBMULTIPATH_3.0.0 {
+LIBMULTIPATH_4.0.0 {
global:
/* symbols referenced by multipath and multipathd */
add_foreign;
@@ -51,10 +51,7 @@ global:
checker_name;
checker_state_name;
check_foreign;
- cleanup_checkers;
- cleanup_foreign;
cleanup_lock;
- cleanup_prio;
close_fd;
coalesce_paths;
convert_dev;
diff --git a/multipathd/main.c b/multipathd/main.c
index 50cc3356..4de0978e 100644
--- a/multipathd/main.c
+++ b/multipathd/main.c
@@ -3028,9 +3028,6 @@ static void cleanup_child(void)
{
cleanup_threads();
cleanup_vecs();
- cleanup_foreign();
- cleanup_checkers();
- cleanup_prio();
if (poll_dmevents)
cleanup_dmevent_waiter();