summaryrefslogtreecommitdiff
path: root/Kernel
diff options
context:
space:
mode:
authorTom <tomut@yahoo.com>2021-07-16 14:57:44 -0600
committerAndreas Kling <kling@serenityos.org>2021-07-17 00:04:57 +0200
commit3cca9e670434cf4001012d3d41935df8f50604c5 (patch)
tree114ea9caa0a899212041c5d50050523aa43ca874 /Kernel
parent7bdd66ed89582f95de55c68622558b2fbe6837ca (diff)
downloadserenity-3cca9e670434cf4001012d3d41935df8f50604c5.zip
Kernel: Initialize TimeManagement before using KernelRNG
We should initialize the timers before KernelRNG as the RNG may want to utilize system time as an entropy source. Fixes #8710
Diffstat (limited to 'Kernel')
-rw-r--r--Kernel/init.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/Kernel/init.cpp b/Kernel/init.cpp
index 5b1ed32b10..a0ba15cc13 100644
--- a/Kernel/init.cpp
+++ b/Kernel/init.cpp
@@ -144,14 +144,15 @@ extern "C" [[noreturn]] UNMAP_AFTER_INIT void init()
InterruptManagement::initialize();
ACPI::initialize();
+ // Initialize TimeManagement before using randomness!
+ TimeManagement::initialize(0);
+
__stack_chk_guard = get_fast_random<u32>();
ProcFSComponentRegistry::initialize();
Thread::initialize();
Process::initialize();
- TimeManagement::initialize(0);
-
Scheduler::initialize();
dmesgln("Starting SerenityOS...");