Version in base suite: 1.16.3-3.1 Base version: sssd_1.16.3-3.1 Target version: sssd_1.16.3-3.2 Base file: /srv/ftp-master.debian.org/ftp/pool/main/s/sssd/sssd_1.16.3-3.1.dsc Target file: /srv/ftp-master.debian.org/policy/pool/main/s/sssd/sssd_1.16.3-3.2.dsc debian/patches/fix-946847.diff | 36 ++++++++++++++++++++++++++++++++++++ sssd-1.16.3/debian/changelog | 8 ++++++++ sssd-1.16.3/debian/patches/series | 1 + 3 files changed, 45 insertions(+) diff -u sssd-1.16.3/debian/changelog sssd-1.16.3/debian/changelog --- sssd-1.16.3/debian/changelog +++ sssd-1.16.3/debian/changelog @@ -1,3 +1,11 @@ +sssd (1.16.3-3.2) buster; urgency=medium + + * Non-maintainer upload with maintainer permission. + * Fix sssd_be busy-looping when LDAP connection flickers. + (Closes: #946847) + + -- Thorsten Glaser Fri, 21 Feb 2020 14:31:19 +0100 + sssd (1.16.3-3.1) unstable; urgency=high * Non-maintainer upload. diff -u sssd-1.16.3/debian/patches/series sssd-1.16.3/debian/patches/series --- sssd-1.16.3/debian/patches/series +++ sssd-1.16.3/debian/patches/series @@ -3,0 +4 @@ +fix-946847.diff only in patch2: unchanged: --- sssd-1.16.3.orig/debian/patches/fix-946847.diff +++ sssd-1.16.3/debian/patches/fix-946847.diff @@ -0,0 +1,36 @@ +Description: fix busy loop caused by watchdog SIGTERM not processed +Origin: https://pagure.io/SSSD/sssd/c/2c13d8b +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=946847 +Bug: https://pagure.io/SSSD/sssd/issue/4132 +Bug: https://pagure.io/SSSD/sssd/issue/4089 +Forwarded: not-needed +Author: Alexey Tikhonov +Reviewed-by: Sumit Bose +Reviewed-by: mirabilos +Applied-Upstream: 2.2.4, commit:2c13d8b +Applied-Upstream: 1.16.5, commit:0c62066 + +--- a/src/util/util_watchdog.c ++++ b/src/util/util_watchdog.c +@@ -54,9 +54,8 @@ static void watchdog_detect_timeshift(vo + if (write(watchdog_ctx.pipefd[1], "1", 1) != 1) { + if (getpid() == getpgrp()) { + kill(-getpgrp(), SIGTERM); +- } else { +- _exit(1); + } ++ _exit(1); + } + } + } +@@ -75,9 +74,8 @@ static void watchdog_handler(int sig) + if (__sync_add_and_fetch(&watchdog_ctx.ticks, 1) > WATCHDOG_MAX_TICKS) { + if (getpid() == getpgrp()) { + kill(-getpgrp(), SIGTERM); +- } else { +- _exit(1); + } ++ _exit(1); + } + } +