diff options
author | jhb <jhb@FreeBSD.org> | 2016-03-28 21:51:56 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2016-03-28 21:51:56 +0000 |
commit | f8c8714465ae2c2bb86eefeb92ab842cde9d38d4 (patch) | |
tree | 82d79e045ff90a691c41157948d71605b50f0f31 /sys/dev/random | |
parent | 6441be832c93e46cad5d524d0ddb0a0bf68dc091 (diff) | |
download | FreeBSD-src-f8c8714465ae2c2bb86eefeb92ab842cde9d38d4.zip FreeBSD-src-f8c8714465ae2c2bb86eefeb92ab842cde9d38d4.tar.gz |
Don't start the random harvester process until timers are working.
This is a no-op currently, but in kernels with earlier AP startup, the
random kthread was trying to use timeouts with sleeps before timers are
working. Wait until SI_SUB_KICK_SCHEDULER to start the random kproc.
Reviewed by: delphij, imp, markm
Approved by: so
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D5712
Diffstat (limited to 'sys/dev/random')
-rw-r--r-- | sys/dev/random/random_harvestq.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/random/random_harvestq.c b/sys/dev/random/random_harvestq.c index c56d1ec..081ba83 100644 --- a/sys/dev/random/random_harvestq.c +++ b/sys/dev/random/random_harvestq.c @@ -183,7 +183,8 @@ random_kthread(void) /* NOTREACHED */ } /* This happens well after SI_SUB_RANDOM */ -SYSINIT(random_device_h_proc, SI_SUB_CREATE_INIT, SI_ORDER_ANY, kproc_start, &random_proc_kp); +SYSINIT(random_device_h_proc, SI_SUB_KICK_SCHEDULER, SI_ORDER_ANY, kproc_start, + &random_proc_kp); /* * Run through all fast sources reading entropy for the given |