aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/services/telephony.scm12
1 files changed, 5 insertions, 7 deletions
diff --git a/gnu/services/telephony.scm b/gnu/services/telephony.scm
index 3d855221e5..b66c7a8563 100644
--- a/gnu/services/telephony.scm
+++ b/gnu/services/telephony.scm
@@ -685,13 +685,11 @@ argument, either a registered username or the fingerprint of the account.")
;; Finally, return the PID of the daemon process.
daemon-pid))
- (stop
- #~(lambda (pid . args)
- (kill pid SIGKILL)
- ;; Wait for the process to exit; this prevents overlapping
- ;; processes when issuing 'herd restart'.
- (waitpid pid)
- #f))))))))
+ ;; XXX: jamid takes some time to terminate, and GNU Shepherd
+ ;; doesn't block when calling waitpid (see:
+ ;; https://issues.guix.gnu.org/57922). Using SIGKILL instead
+ ;; of SIGTERM works around that.
+ (stop #~(make-kill-destructor SIGKILL))))))))
(define jami-service-type
(service-type