@@ -257,8 +257,8 @@ syscall_entry syscalls[] = {
257257
258258bool decode_crash_address_with_info (uint8_t depth , uintptr_t address , sizedptr debug_line , sizedptr debug_line_str ){
259259 if (!debug_line .ptr || !debug_line .size ) return false;
260- debug_line_info info = dwarf_decode_lines (debug_line .ptr , debug_line .size , debug_line_str .ptr , debug_line_str .size , address );
261- if (info .address == address ){
260+ debug_line_info info = dwarf_decode_lines (debug_line .ptr , debug_line .size , debug_line_str .ptr , debug_line_str .size , VIRT_TO_PHYS ( address ) );
261+ if (info .address == VIRT_TO_PHYS ( address ) ){
262262 kprintf ("[%.16x] %i: %s %i:%i" , address , depth , info .file , info .line , info .column );
263263 return true;
264264 }
@@ -380,7 +380,7 @@ void sync_el0_handler_c(){
380380 }
381381 if (currentEL == 1 ){
382382 if (syscall_depth < 3 ){
383- if (syscall_depth == 1 ) kprintf ("System has crashed. ESR: %llx. ELR: %llx. FAR: %llx" , esr , elr , far );
383+ if (syscall_depth < 1 ) kprintf ("System has crashed. ESR: %llx. ELR: %llx. FAR: %llx" , esr , elr , far );
384384 if (syscall_depth < 2 ) coredump (esr , elr , far , proc -> sp );
385385 handle_exception ("UNEXPECTED EXCEPTION" ,ec );
386386 }
0 commit comments