diff --git a/framework/jinux-frame/src/console.rs b/framework/jinux-frame/src/console.rs index 1cf48ad0..d0a3193e 100644 --- a/framework/jinux-frame/src/console.rs +++ b/framework/jinux-frame/src/console.rs @@ -5,14 +5,14 @@ pub fn print(args: Arguments) { } #[macro_export] -macro_rules! print { +macro_rules! early_print { ($fmt: literal $(, $($arg: tt)+)?) => { $crate::console::print(format_args!($fmt $(, $($arg)+)?)) } } #[macro_export] -macro_rules! println { +macro_rules! early_println { ($fmt: literal $(, $($arg: tt)+)?) => { $crate::console::print(format_args!(concat!($fmt, "\n") $(, $($arg)+)?)) } diff --git a/framework/jinux-frame/src/lib.rs b/framework/jinux-frame/src/lib.rs index 6b0e6086..0c685412 100644 --- a/framework/jinux-frame/src/lib.rs +++ b/framework/jinux-frame/src/lib.rs @@ -55,7 +55,7 @@ pub fn init() { #[cfg(feature = "intel_tdx")] let td_info = init_tdx().unwrap(); #[cfg(feature = "intel_tdx")] - println!( + early_println!( "td gpaw: {}, td attributes: {:?}\nTDX guest is initialized", td_info.gpaw, td_info.attributes diff --git a/framework/jinux-frame/src/logger.rs b/framework/jinux-frame/src/logger.rs index e4cd04aa..8e5f0b86 100644 --- a/framework/jinux-frame/src/logger.rs +++ b/framework/jinux-frame/src/logger.rs @@ -1,4 +1,4 @@ -use crate::{config::DEFAULT_LOG_LEVEL, println}; +use crate::{config::DEFAULT_LOG_LEVEL, early_println}; use log::{Metadata, Record}; @@ -13,7 +13,7 @@ impl log::Log for Logger { fn log(&self, record: &Record) { if self.enabled(record.metadata()) { - println!("[{}]: {}", record.level(), record.args()); + early_println!("[{}]: {}", record.level(), record.args()); } } diff --git a/framework/jinux-frame/src/panicking.rs b/framework/jinux-frame/src/panicking.rs index 9c005b4e..b3f00b8b 100644 --- a/framework/jinux-frame/src/panicking.rs +++ b/framework/jinux-frame/src/panicking.rs @@ -4,7 +4,7 @@ use alloc::{boxed::Box, string::ToString}; use core::ffi::c_void; use crate::arch::qemu::{exit_qemu, QemuExitCode}; -use crate::{print, println}; +use crate::{early_print, early_println}; use log::error; extern crate cfg_if; @@ -36,8 +36,8 @@ fn panic_handler(info: &core::panic::PanicInfo) -> ! { // If the exception is not caught (e.g. by ktest) and resumed, // then print the information and abort. error!("Uncaught panic!"); - println!("{}", info); - println!("printing stack trace:"); + early_println!("{}", info); + early_println!("printing stack trace:"); print_stack_trace(); abort(); } @@ -51,7 +51,7 @@ fn print_stack_trace() { data.counter += 1; let pc = _Unwind_GetIP(unwind_ctx); let fde_initial_address = _Unwind_FindEnclosingFunction(pc as *mut c_void) as usize; - println!( + early_println!( "{:4}: fn {:#18x} - pc {:#18x} / registers:", data.counter, fde_initial_address, pc, ); @@ -67,11 +67,11 @@ fn print_stack_trace() { } } if i % 4 == 0 { - print!("\n "); + early_print!("\n "); } - print!(" {} {:#18x};", reg_name, reg_i); + early_print!(" {} {:#18x};", reg_name, reg_i); } - print!("\n\n"); + early_print!("\n\n"); UnwindReasonCode::NO_REASON } let mut data = CallbackData { counter: 0 }; diff --git a/kernel/main.rs b/kernel/main.rs index b9bf3cd8..34089190 100644 --- a/kernel/main.rs +++ b/kernel/main.rs @@ -5,12 +5,12 @@ // #![forbid(unsafe_code)] extern crate jinux_frame; -use jinux_frame::println; +use jinux_frame::early_println; #[export_name = "jinux_main"] pub fn main() -> ! { jinux_frame::init(); - println!("[kernel] finish init jinux_frame"); + early_println!("[kernel] finish init jinux_frame"); component::init_all(component::parse_metadata!()).unwrap(); jinux_std::init(); jinux_std::run_first_process();