diff options
Diffstat (limited to 'sys-apps/rng-tools/files/rngd-shutdown.patch')
-rw-r--r-- | sys-apps/rng-tools/files/rngd-shutdown.patch | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/sys-apps/rng-tools/files/rngd-shutdown.patch b/sys-apps/rng-tools/files/rngd-shutdown.patch deleted file mode 100644 index ba2fffdd86f6..000000000000 --- a/sys-apps/rng-tools/files/rngd-shutdown.patch +++ /dev/null @@ -1,37 +0,0 @@ -https://bugzilla.redhat.com/show_bug.cgi?id=1690364 - -diff --git a/rngd_jitter.c b/rngd_jitter.c -index 23d96b3..43a13e0 100644 ---- a/rngd_jitter.c -+++ b/rngd_jitter.c -@@ -473,26 +473,22 @@ void close_jitter_entropy_source(struct rng *ent_src) - for (i=0; i < num_threads; i++) - tdata[i].active = 0; - -- flags = fcntl(pipefds[1], F_GETFL, 0); -- flags |= O_NONBLOCK; -- fcntl(pipefds[1], F_SETFL, &flags); -+ close(pipefds[1]); - - /* And wait for completion of each thread */ - for (i=0; i < num_threads; i++) { - message(LOG_DAEMON|LOG_DEBUG, "Checking on done for thread %d\n", i); - while (!tdata[i].done) -+ pthread_kill(threads[i], SIGINT); - if(tdata[i].done) { - message(LOG_DAEMON|LOG_INFO, "Closing thread %d\n", tdata[i].core_id); - pthread_join(threads[i], NULL); - jent_entropy_collector_free(tdata[i].ec); -- } else { -- read(pipefds[0], tmpbuf, 1024); -+ } else - sched_yield(); -- } - } - -- close(pipefds[2]); -- close(pipefds[1]); -+ close(pipefds[0]); - free(tdata); - free(threads); - return; |