Fix various compiler warnings when built without systemd. Submitted upstream at . diff --git a/libmultipath/config.c b/libmultipath/config.c --- a/libmultipath/config.c +++ b/libmultipath/config.c @@ -696,7 +696,7 @@ process_config_dir(struct config *conf, char *dir) pthread_cleanup_pop(1); } -static void set_max_checkint_from_watchdog(struct config *conf) +static void set_max_checkint_from_watchdog(__attribute__((unused)) struct config *conf) { #ifdef USE_SYSTEMD char *envp = getenv("WATCHDOG_USEC"); diff --git a/multipathd/main.c b/multipathd/main.c --- 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) { - enum daemon_status old_state = running_state; + /* save state for sd_notify */ + enum daemon_status + __attribute__((unused)) old_state = running_state; 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) { - enum daemon_status old_state = running_state; + /* save state for sd_notify */ + enum daemon_status + __attribute__((unused)) old_state = running_state; if (running_state == DAEMON_SHUTDOWN) rc = EINVAL; @@ -2280,7 +2284,6 @@ checkerloop (void *ap) struct timespec last_time; struct config *conf; int foreign_tick = 0; - bool use_watchdog; pthread_cleanup_push(rcu_unregister, NULL); rcu_register_thread(); @@ -2292,11 +2295,15 @@ checkerloop (void *ap) get_monotonic_time(&last_time); last_time.tv_sec -= 1; - /* use_watchdog is set from process environment and never changes */ conf = get_multipath_config(); - use_watchdog = conf->use_watchdog; put_multipath_config(conf); +#ifdef USE_SYSTEMD + /* use_watchdog is set from process environment and never changes */ + bool use_watchdog; + use_watchdog = conf->use_watchdog; +#endif + while (1) { struct timespec diff_time, start_time, end_time; int num_paths = 0, strict_timing, rc = 0;