Message ID | 20180704151051.5562455.25539.20186@canonical.com |
---|---|
State | New |
Headers | show |
Series | ACK: [SRU bionic] random: Make getrandom() ready earlier | expand |
diff --git a/drivers/char/random.c b/drivers/char/random.c index d5f1211..6021405 100644 --- a/drivers/char/random.c +++ b/drivers/char/random.c @@ -1976,10 +1976,10 @@ SYSCALL_DEFINE3(getrandom, char __user *, buf, size_t, count, if (flags & GRND_RANDOM) return _random_read(flags & GRND_NONBLOCK, buf, count); - if (!crng_ready()) { + if (crng_init == 0) { if (flags & GRND_NONBLOCK) return -EAGAIN; - ret = wait_for_random_bytes(); + ret = wait_event_interruptible(crng_init_wait, crng_init > 0); if (unlikely(ret)) return ret; }