diff options
Diffstat (limited to 'meta/recipes-support/rng-tools/rng-tools/fix-rngd-fail-to-stop.patch')
-rw-r--r-- | meta/recipes-support/rng-tools/rng-tools/fix-rngd-fail-to-stop.patch | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/meta/recipes-support/rng-tools/rng-tools/fix-rngd-fail-to-stop.patch b/meta/recipes-support/rng-tools/rng-tools/fix-rngd-fail-to-stop.patch new file mode 100644 index 0000000000..58cf3f9d59 --- /dev/null +++ b/meta/recipes-support/rng-tools/rng-tools/fix-rngd-fail-to-stop.patch | |||
@@ -0,0 +1,25 @@ | |||
1 | It fails to stop rngd. It just shows warnings when stop rngd such as by: | ||
2 | |||
3 | $ systemctl stop rngd.service | ||
4 | |||
5 | but stalls shutdown untill daemon rngd is killed. | ||
6 | |||
7 | Backport patch to fix the issue. | ||
8 | |||
9 | Upstream-Status: Backport [https://bugzilla.redhat.com/show_bug.cgi?id=1690364#c8] | ||
10 | |||
11 | Signed-off-by: Kai Kang <kai.kang@windriver.com> | ||
12 | --- | ||
13 | diff --git a/rngd_jitter.c b/rngd_jitter.c | ||
14 | index 54070ae..7a69bf9 100644 | ||
15 | --- a/rngd_jitter.c | ||
16 | +++ b/rngd_jitter.c | ||
17 | @@ -280,7 +280,7 @@ static void *thread_entropy_task(void *data) | ||
18 | |||
19 | /* Write to pipe */ | ||
20 | written = 0; | ||
21 | - while(written != me->buf_sz) { | ||
22 | + while(me->active && written != me->buf_sz) { | ||
23 | message(LOG_DAEMON|LOG_DEBUG, "Writing to pipe\n"); | ||
24 | ret = write(me->pipe_fd, &tmpbuf[written], me->buf_sz - written); | ||
25 | message(LOG_DAEMON|LOG_DEBUG, "DONE Writing to pipe with return %ld\n", ret); | ||