From 2b61ad947c64d76875311e6af08c87a5592055b3 Mon Sep 17 00:00:00 2001 From: Christian Cunningham Date: Fri, 26 Aug 2022 19:49:13 -0700 Subject: SpinLocks --- src/kernel.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/kernel.rs') diff --git a/src/kernel.rs b/src/kernel.rs index 8c7ab58..4017b5a 100644 --- a/src/kernel.rs +++ b/src/kernel.rs @@ -26,6 +26,8 @@ mod util; use crate::lib::console::console; use crate::util::mem::alloc::allocator; use crate::util::mem::{format, Box, String}; +use core::sync::atomic::AtomicBool; +use core::sync::atomic::Ordering; /// # Initialization Code /// @@ -48,6 +50,7 @@ unsafe fn kernel_init() -> ! { util::mem::mmu_init(); console().init().unwrap(); allocator().init().unwrap(); + INITIALIZED_BOOL.store(true, Ordering::Release); kernel_main() } @@ -133,10 +136,13 @@ fn run_verbose() { #[no_mangle] /// # SVC Handler -pub fn svc_handler(code: u32) { +pub fn svc(code: u32) { match code { _ => { serial_println!("Unhandled Service Call!"); } } } + +/// # Static for other cores +pub static INITIALIZED_BOOL: AtomicBool = AtomicBool::new(false); -- cgit v1.2.1