]> code.ossystems Code Review - openembedded-core.git/commitdiff
rng-tools: upgrade 6.13 -> 6.14
authorAlexander Kanavin <alex.kanavin@gmail.com>
Sun, 22 Aug 2021 12:51:02 +0000 (14:51 +0200)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 23 Aug 2021 07:25:50 +0000 (08:25 +0100)
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-support/rng-tools/rng-tools/0001-Adding-ability-to-detect-non-posix-extensions-for-pt.patch [new file with mode: 0644]
meta/recipes-support/rng-tools/rng-tools/0002-Allow-for-use-of-either-pthread-affinity-set-methods.patch [new file with mode: 0644]
meta/recipes-support/rng-tools/rng-tools_6.14.bb [moved from meta/recipes-support/rng-tools/rng-tools_6.13.bb with 84% similarity]

diff --git a/meta/recipes-support/rng-tools/rng-tools/0001-Adding-ability-to-detect-non-posix-extensions-for-pt.patch b/meta/recipes-support/rng-tools/rng-tools/0001-Adding-ability-to-detect-non-posix-extensions-for-pt.patch
new file mode 100644 (file)
index 0000000..89edc4c
--- /dev/null
@@ -0,0 +1,41 @@
+From 66e6adc138eef1367d7492fb79ae4da84ed62934 Mon Sep 17 00:00:00 2001
+From: Neil Horman <nhorman@gmail.com>
+Date: Thu, 15 Jul 2021 08:43:01 -0400
+Subject: [PATCH] Adding ability to detect non-posix extensions for pthreads
+
+Theres a desire to build rngd with musl, which doesn't have all the gnu
+extensions (but it has some).  So test for those.  Note, this requires
+the addition of the USE_EXTENSIONS macro to enable -d_GNU_SOURCE
+
+Upstream-Status: Backport
+Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ configure.ac | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 9df633d..d0c2179 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -25,6 +25,7 @@ AC_CANONICAL_TARGET dnl required for broken AX_PTHREAD
+ AM_INIT_AUTOMAKE([foreign])
+ AC_CONFIG_HEADERS([rng-tools-config.h])
+ AC_CONFIG_MACRO_DIRS([m4])
++AC_USE_SYSTEM_EXTENSIONS
+ dnl Parse options
+@@ -100,6 +101,12 @@ AS_IF(
+       ], [AC_MSG_NOTICE([Disabling JITTER entropy source])]
+ )
++AC_CHECK_DECL(pthread_attr_setaffinity_np,
++              [AC_DEFINE([HAVE_PTHREAD_ATTR_SETAFFINITY], 1,[Set ATTR_SETAFFINITY])],
++              [ AC_CHECK_DECL(pthread_setaffinity_np,
++                 [AC_DEFINE([HAVE_PTHREAD_SETAFFINITY],1, [Set PTHREAD_SETAFFINITY])], [ AC_MSG_ERROR([Neither pthread_setaffinity_np nor pthread_attr_setaffinity_np found])],[[#include <pthread.h>]])
++              ], [[#include <pthread.h>]])
++
+ AS_IF(
+       [ test "x$with_nistbeacon" != "xno"],
+       [
diff --git a/meta/recipes-support/rng-tools/rng-tools/0002-Allow-for-use-of-either-pthread-affinity-set-methods.patch b/meta/recipes-support/rng-tools/rng-tools/0002-Allow-for-use-of-either-pthread-affinity-set-methods.patch
new file mode 100644 (file)
index 0000000..f7470d0
--- /dev/null
@@ -0,0 +1,47 @@
+From e4909f329245db52415102e96fc7c99ca1445d05 Mon Sep 17 00:00:00 2001
+From: Neil Horman <nhorman@gmail.com>
+Date: Thu, 15 Jul 2021 08:48:10 -0400
+Subject: [PATCH] Allow for use of either pthread affinity set methods
+
+musl has support for pthread_setaffinity_np, but not
+pthread_attr_setaffinity_np.  so check for hte existence of either
+function in configure, and use the appropriate one.
+
+Upstream-Status: Backport
+Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ rngd_jitter.c | 15 ++++++++++++++-
+ 1 file changed, 14 insertions(+), 1 deletion(-)
+
+diff --git a/rngd_jitter.c b/rngd_jitter.c
+index ea29436..5c7e09e 100644
+--- a/rngd_jitter.c
++++ b/rngd_jitter.c
+@@ -67,12 +67,25 @@ static int rngd_notime_start(void *ctx,
+       for(i=i-1;i>=0;i--) {
+               CPU_SET(i,cpus);
+       }
+-      pthread_attr_setaffinity_np(&thread_ctx->notime_pthread_attr, cpusize, cpus);
++        /*
++       * Note that only one of:
++       * HAVE_PTHREAD_ATTR_SETAFFINITY
++       * and
++       * HAVE_PTHREAD_SETAFFINITY
++       * Will ever be set, as per the configure.ac logic
++       */
++#ifdef HAVE_PTHREAD_ATTR_SETAFFINITY
++      pthread_attr_setaffinity_np(&thread_ctx->notime_pthread_attr, cpusize, cpus);
++#endif
+       ret = -pthread_create(&thread_ctx->notime_thread_id,
+                               &thread_ctx->notime_pthread_attr,
+                               start_routine, arg);
++#ifdef HAVE_PTHREAD_SETAFFINITY
++      pthread_setaffinity_np(&thread_ctx->notime_thread_id, cpusize, cpus);
++#endif
++
+       CPU_FREE(cpus);
+       return ret;
+ }
similarity index 84%
rename from meta/recipes-support/rng-tools/rng-tools_6.13.bb
rename to meta/recipes-support/rng-tools/rng-tools_6.14.bb
index 84dbc7685573e7d03591cfd01c0ed99978444391..6b79a3b040b25433867d57a9196fa5ecc86c9085 100644 (file)
@@ -8,13 +8,14 @@ LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 DEPENDS = "sysfsutils openssl"
 
-SRC_URI = "\
-    git://github.com/nhorman/rng-tools.git \
-    file://init \
-    file://default \
-    file://rngd.service \
-"
-SRCREV = "d8dac0e8bede73e42b3d59f3b48c662ad0032e8c"
+SRC_URI = "git://github.com/nhorman/rng-tools.git \
+           file://init \
+           file://default \
+           file://rngd.service \
+           file://0001-Adding-ability-to-detect-non-posix-extensions-for-pt.patch \
+           file://0002-Allow-for-use-of-either-pthread-affinity-set-methods.patch \
+           "
+SRCREV = "c16176d3800b91f4d016b66733b384493b06f294"
 
 S = "${WORKDIR}/git"