2b0cd7cceb
Rebased on top of Martin Wilck's queue of ACKed upstream commits * https://github.com/openSUSE/multipath-tools/tree/upstream-queue * All previous patches have been reordered, with the exception of 0011-libdmmp-Add-support-for-upcoming-json-c-0.14.0.patch which has been replaced with 0029-fix-boolean-value-with-json-c-0.14.patch Modify 0054-RH-add-mpathconf.patch * remove default enable_foreign and property blacklist_exceptions settings, and deal with the builtin default change from 0031-libmultipath-set-enable_foreign-to-NONE-by-default.patch. Fixes bz #1853668 Add 0048-Makefile.inc-trim-extra-information-from-systemd-ver.patch Add 0049-kpartx-fix-Wsign-compare-error.patch * The above two patches have been submitted upstream
112 lines
3.1 KiB
Diff
112 lines
3.1 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Marius Bakke <marius@devup.no>
|
|
Date: Wed, 17 Jun 2020 01:11:26 +0200
|
|
Subject: [PATCH] multipath: Fix compiler warnings when built without systemd.
|
|
|
|
Add ifdef guards for code that is unused when systemd is not available.
|
|
|
|
Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
|
|
---
|
|
libmultipath/config.c | 6 ++++--
|
|
multipathd/main.c | 10 +++++++++-
|
|
2 files changed, 13 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/libmultipath/config.c b/libmultipath/config.c
|
|
index b4d87689..658bec8b 100644
|
|
--- a/libmultipath/config.c
|
|
+++ b/libmultipath/config.c
|
|
@@ -696,9 +696,9 @@ process_config_dir(struct config *conf, char *dir)
|
|
pthread_cleanup_pop(1);
|
|
}
|
|
|
|
+#ifdef USE_SYSTEMD
|
|
static void set_max_checkint_from_watchdog(struct config *conf)
|
|
{
|
|
-#ifdef USE_SYSTEMD
|
|
char *envp = getenv("WATCHDOG_USEC");
|
|
unsigned long checkint;
|
|
|
|
@@ -714,8 +714,8 @@ static void set_max_checkint_from_watchdog(struct config *conf)
|
|
condlog(3, "enabling watchdog, interval %ld", checkint);
|
|
conf->use_watchdog = true;
|
|
}
|
|
-#endif
|
|
}
|
|
+#endif
|
|
|
|
struct config *
|
|
load_config (char * file)
|
|
@@ -789,7 +789,9 @@ load_config (char * file)
|
|
/*
|
|
* fill the voids left in the config file
|
|
*/
|
|
+#ifdef USE_SYSTEMD
|
|
set_max_checkint_from_watchdog(conf);
|
|
+#endif
|
|
if (conf->max_checkint == 0) {
|
|
if (conf->checkint == CHECKINT_UNDEF)
|
|
conf->checkint = DEFAULT_CHECKINT;
|
|
diff --git a/multipathd/main.c b/multipathd/main.c
|
|
index 6b7db2c0..205ddb32 100644
|
|
--- a/multipathd/main.c
|
|
+++ b/multipathd/main.c
|
|
@@ -176,6 +176,7 @@ daemon_status(void)
|
|
/*
|
|
* I love you too, systemd ...
|
|
*/
|
|
+#ifdef USE_SYSTEMD
|
|
static const char *
|
|
sd_notify_status(enum daemon_status state)
|
|
{
|
|
@@ -195,7 +196,6 @@ sd_notify_status(enum daemon_status state)
|
|
return NULL;
|
|
}
|
|
|
|
-#ifdef USE_SYSTEMD
|
|
static void do_sd_notify(enum daemon_status old_state,
|
|
enum daemon_status new_state)
|
|
{
|
|
@@ -247,7 +247,9 @@ enum daemon_status wait_for_state_change_if(enum daemon_status oldstate,
|
|
static void __post_config_state(enum daemon_status state)
|
|
{
|
|
if (state != running_state && running_state != DAEMON_SHUTDOWN) {
|
|
+#ifdef USE_SYSTEMD
|
|
enum daemon_status old_state = running_state;
|
|
+#endif
|
|
|
|
running_state = state;
|
|
pthread_cond_broadcast(&config_cond);
|
|
@@ -272,7 +274,9 @@ int set_config_state(enum daemon_status state)
|
|
pthread_cleanup_push(config_cleanup, NULL);
|
|
pthread_mutex_lock(&config_lock);
|
|
if (running_state != state) {
|
|
+#ifdef USE_SYSTEMD
|
|
enum daemon_status old_state = running_state;
|
|
+#endif
|
|
|
|
if (running_state == DAEMON_SHUTDOWN)
|
|
rc = EINVAL;
|
|
@@ -2280,7 +2284,9 @@ checkerloop (void *ap)
|
|
struct timespec last_time;
|
|
struct config *conf;
|
|
int foreign_tick = 0;
|
|
+#ifdef USE_SYSTEMD
|
|
bool use_watchdog;
|
|
+#endif
|
|
|
|
pthread_cleanup_push(rcu_unregister, NULL);
|
|
rcu_register_thread();
|
|
@@ -2294,7 +2300,9 @@ checkerloop (void *ap)
|
|
|
|
/* use_watchdog is set from process environment and never changes */
|
|
conf = get_multipath_config();
|
|
+#ifdef USE_SYSTEMD
|
|
use_watchdog = conf->use_watchdog;
|
|
+#endif
|
|
put_multipath_config(conf);
|
|
|
|
while (1) {
|
|
--
|
|
2.17.2
|
|
|