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 - [email protected]
+
+- reset rpm groups
+
+-------------------------------------------------------------------
+Fri Jun 17 14:15:05 UTC 2016 - [email protected]
+
+- 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 
[email protected] 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]


Reply via email to