commit haveged for openSUSE:Factory
Hello community, here is the log from the commit of package haveged for openSUSE:Factory checked in at 2016-06-29 15:02:31 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/haveged (Old) and /work/SRC/openSUSE:Factory/.haveged.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "haveged" Changes: -------- --- /work/SRC/openSUSE:Factory/haveged/haveged.changes 2015-12-18 21:53:04.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.haveged.new/haveged.changes 2016-06-29 15:02:33.000000000 +0200 @@ -1,0 +2,22 @@ +Sun Jun 19 13:16:01 UTC 2016 - jengelh@inai.de + +- reset rpm groups + +------------------------------------------------------------------- +Fri Jun 17 14:15:05 UTC 2016 - psimons@suse.com + +- Add haveged-no-syslog.patch to remedy the potential for deadlocks + when booting the system: journald reads from /dev/random, which + receives entropy from haveged, which in turn logs to syslog + before providing any. Ideally, haveged would provide a proper + command-line flag to disable use of syslog. Will work with + upstream to resolve this in a cleaner way. (bnc#959237) + +- Remove "After=systemd-random-seed.service" from systemd service + file to avoid the potential for deadlocks when booting the + system: systemd-random-seed needs /var to read its previous + state; mounting /var needs journald; journald needs entropy; and + entropy is provided by haveged, which needs systemd-random-seed. + (bnc#959237) + +------------------------------------------------------------------- New: ---- haveged-no-syslog.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ haveged.spec ++++++ --- /var/tmp/diff_new_pack.6iJb8j/_old 2016-06-29 15:02:34.000000000 +0200 +++ /var/tmp/diff_new_pack.6iJb8j/_new 2016-06-29 15:02:34.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package haveged # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -32,6 +32,8 @@ Patch1: haveged-conditional-enttest.patch # PATCH-FIX-OPENSUSE: ignore clock-gettime enablement on generic architectures Patch2: fix-enforced-clock-gettime.patch +# PATCH-FIX-UPSTREAM: don't write to syslog at startup to avoid deadlocks psimons@suse.com bnc#959237 +Patch3: haveged-no-syslog.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: libtool @@ -58,7 +60,7 @@ %package devel Summary: Haveged development files -Group: Development/Libraries +Group: Development/Libraries/C and C++ Requires: libhavege1 = %{version} %description devel @@ -69,7 +71,7 @@ %package -n libhavege1 Summary: Haveged interface library -Group: Development/Libraries/C and C++ +Group: System/Libraries %description -n libhavege1 Shared object for the haveged library @@ -81,6 +83,7 @@ %patch0 -p1 %patch1 -p1 %patch2 +%patch3 -p1 %build autoreconf -fvi ++++++ haveged-no-syslog.patch ++++++ Index: haveged-1.9.1/src/haveged.c =================================================================== --- haveged-1.9.1.orig/src/haveged.c +++ haveged-1.9.1/src/haveged.c @@ -361,8 +361,10 @@ static void daemonize( /* RETURN: no void) /* IN: nothing */ { FILE *fh; +#if 0 openlog(params->daemon, LOG_CONS, LOG_DAEMON); syslog(LOG_NOTICE, "%s starting up", params->daemon); +#endif if (daemon(0, 0) == -1) error_exit("Cannot fork into the background"); fh = fopen(params->pid_file, "w"); @@ -499,7 +501,9 @@ static void error_exit( /* RETURN: no #ifndef NO_DAEMON if (params->detached!=0) { unlink(params->pid_file); +#if 0 syslog(LOG_INFO, "%s: %s", params->daemon, buffer); +#endif } else #endif @@ -609,11 +613,13 @@ static void print_msg( /* RETURN: no va_list ap; va_start(ap, format); snprintf(buffer, sizeof(buffer), "%s: %s", params->daemon, format); +#if 0 #ifndef NO_DAEMON if (params->detached != 0) vsyslog(LOG_INFO, buffer, ap); else #endif +#endif vfprintf(stderr, buffer, ap); va_end(ap); } ++++++ haveged.service ++++++ --- /var/tmp/diff_new_pack.6iJb8j/_old 2016-06-29 15:02:35.000000000 +0200 +++ /var/tmp/diff_new_pack.6iJb8j/_new 2016-06-29 15:02:35.000000000 +0200 @@ -4,7 +4,8 @@ DefaultDependencies=no ConditionVirtualization=!container #Conflicts=shutdown.target -After=systemd-random-seed.service +# Don't wait for systemd-random-seed.service, leads to deadlock with fips=1 +#After=systemd-random-seed.service Before=sysinit.target shutdown.target systemd-journald.service [Service]
participants (1)
-
root@hilbert.suse.de