From 3cca9e670434cf4001012d3d41935df8f50604c5 Mon Sep 17 00:00:00 2001 From: Tom Date: Fri, 16 Jul 2021 14:57:44 -0600 Subject: [PATCH] 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 --- Kernel/init.cpp | 5 +++-- 1 file 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(); ProcFSComponentRegistry::initialize(); Thread::initialize(); Process::initialize(); - TimeManagement::initialize(0); - Scheduler::initialize(); dmesgln("Starting SerenityOS...");