Revert the DEVRANDOM_WAIT feature
authorDr. Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
Wed, 5 Jun 2019 09:09:46 +0000 (11:09 +0200)
committerDr. Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
Sun, 9 Jun 2019 07:53:39 +0000 (09:53 +0200)
commitad416c80581c181f3c96f47c670626bf3ff58410
treed9a5a0c73c7ecf872d5be38e983fd2951d8198bb
parent7febec94858da85afe59bd70a3e728b724ed1ea0
Revert the DEVRANDOM_WAIT feature

The DEVRANDOM_WAIT feature added a select() call to wait for the
`/dev/random` device to become readable before reading from the
`/dev/urandom` device. It was introduced in commit 38023b87f037
in order to mitigate the fact that the `/dev/urandom` device
does not block until the initial seeding of the kernel CSPRNG
has completed, contrary to the behaviour of the `getrandom()`
system call.

It turned out that this change had negative side effects on
performance which were not acceptable. After some discussion it
was decided to revert this feature and leave it up to the OS
resp. the platform maintainer to ensure a proper initialization
during early boot time.

Fixes #9078

This partially reverts commit 38023b87f037.

Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
(cherry picked from commit a08714e18131b1998faa0113e5bd4024044654ac)

(Merged from https://github.com/openssl/openssl/pull/9118)
crypto/rand/rand_unix.c
e_os.h