Make x86_64 log writer not use println!.

This opens the door to completely elimnating println! usage from the
kernel.

Signed-off-by: Wren Turkal <wt@penguintechs.org>
This commit is contained in:
Wren Turkal
2020-08-09 00:00:26 -07:00
parent 5301057324
commit 4c009530a8

View File

@@ -84,7 +84,16 @@ pub unsafe extern fn kstart(args_ptr: *const KernelArgs) -> ! {
KERNEL_SIZE.store(kernel_size, Ordering::SeqCst);
// Initialize logger
log::init_logger(|r| println!("{}:{} -- {}", r.target(), r.level(), r.args()));
log::init_logger(|r| {
use core::fmt::Write;
let _ = write!(
crate::arch::x86_64::debug::Writer::new(),
"{}:{} -- {}\n",
r.target(),
r.level(),
r.args()
);
});
info!("Redox OS starting...");
info!("Kernel: {:X}:{:X}", kernel_base, kernel_base + kernel_size);