me
/
guix
Archived
1
0
Fork 0

gnu: multipath-tools: Update to 0.8.5.

* gnu/packages/linux.scm (multipath-tools): Update to 0.8.5.
[source]: Remove patch.
[arguments]: Add a ‘skip-failing-tests’ phase.
* gnu/packages/patches/multipath-tools-sans-systemd.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
master
Tobias Geerinckx-Rice 2020-11-15 00:02:18 +01:00
parent 1ba5071c2d
commit 80817b5098
No known key found for this signature in database
GPG Key ID: 0DB0FF884F556D79
3 changed files with 14 additions and 87 deletions

View File

@ -1357,7 +1357,6 @@ dist_patch_DATA = \
%D%/packages/patches/mozjs38-version-detection.patch \
%D%/packages/patches/mrrescue-support-love-11.patch \
%D%/packages/patches/mtools-mformat-uninitialized.patch \
%D%/packages/patches/multipath-tools-sans-systemd.patch \
%D%/packages/patches/mumps-build-parallelism.patch \
%D%/packages/patches/mumps-shared-libseq.patch \
%D%/packages/patches/mumps-shared-mumps.patch \

View File

@ -4430,7 +4430,7 @@ arrays when needed.")
(define-public multipath-tools
(package
(name "multipath-tools")
(version "0.8.4")
(version "0.8.5")
(source (origin
(method git-fetch)
(uri (git-reference
@ -4439,8 +4439,7 @@ arrays when needed.")
(file-name (git-file-name name version))
(sha256
(base32
"14n8pcgnliicqxzc40xvjxk4cafm4qx7a3rsx5qva74r3ydzx8rn"))
(patches (search-patches "multipath-tools-sans-systemd.patch"))
"0gipg0z79h76j0f449cx4wcrfsv69ravjlpphsac11h302g3nrvg"))
(modules '((guix build utils)))
(snippet
'(begin
@ -4498,6 +4497,18 @@ arrays when needed.")
(("-lmultipath -lcmocka")
"-lmultipath -L$(mpathcmddir) -lmpathcmd -lcmocka"))
#t))
(add-after 'unpack 'skip-failing-tests
(lambda _
;; This test and the module's setup() test an arbitrary block
;; device node name, but the build environment has none.
(substitute* "tests/devt.c"
(("return get_one_devt.*") "return 0;\n")
(("cmocka_unit_test\\(test_devt2devname_devt_good\\),") ""))
;; The above triggers -Werror=unused-function. Ignore it.
(substitute* "tests/Makefile"
(("CFLAGS \\+= " match)
(string-append match "-Wno-error=unused-function ")))
#t))
(delete 'configure)))) ; no configure script
(native-inputs
`(("perl" ,perl)

View File

@ -1,83 +0,0 @@
Fix various compiler warnings when built without systemd.
Submitted upstream at <https://www.redhat.com/archives/dm-devel/2020-May/thread.html>.
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;