@@ -12,26 +12,27 @@ extern void double_fault_asm(); // df_asm.S
1212ticketlock error_lock ;
1313
1414void print_register (interrupt_frame_t * frame ) {
15- printe ("ss: 0x%p " , frame -> ss );
16- printe ("cs: 0x%p " , frame -> cs );
17- printe ("rsp: 0x%p \n" , frame -> rsp );
18- printe ("rip: 0x%p " , frame -> rip );
19- printe ("rflags: 0x%p " , frame -> rflags );
20- printe ("cr3: 0x%p \n" , get_cr3 ());
15+ printk ("ss: 0x%p " , frame -> ss );
16+ printk ("cs: 0x%p " , frame -> cs );
17+ printk ("rsp: 0x%p \n" , frame -> rsp );
18+ printk ("rip: 0x%p " , frame -> rip );
19+ printk ("rflags: 0x%p " , frame -> rflags );
20+ printk ("cr3: 0x%p \n" , get_cr3 ());
2121}
2222
2323void print_task_info (pcb_t pcb ) {
2424 if (pcb == NULL )
25- printe ("Current process PID: 0 (Kernel) CPU%d\n" , get_current_cpuid ());
25+ printk ("Current process PID: 0 (Kernel) CPU%d\n" , get_current_cpuid ());
2626 else
27- printe ("Current process PID: %d (%s) CPU%d\n" , pcb -> pid , pcb -> name , get_current_cpuid ());
27+ printk ("Current process PID: %d (%s) CPU%d\n" , pcb -> pid , pcb -> name , get_current_cpuid ());
2828}
2929
3030void kernel_error (const char * msg , uint64_t code , interrupt_frame_t * frame ) {
3131 close_interrupt ;
32+ init_print_lock ();
3233 ticket_lock (& error_lock );
3334 logkf ("Kernel Error: %s:0x%x\n" , msg , code );
34- printe ("\033[31m:3 Your CP_Kernel ran into a problem.\nERROR CODE >(%s:0x%x)<\033[0m\n" , msg ,
35+ printk ("\033[31m:3 Your CP_Kernel ran into a problem.\nERROR CODE >(%s:0x%x)<\033[0m\n" , msg ,
3536 code );
3637 print_task_info (get_current_task ());
3738 print_register (frame );
0 commit comments