Rev 1702 | Rev 1776 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1702 | Rev 1735 | ||
---|---|---|---|
Line 342... | Line 342... | ||
342 | symbol = s; |
342 | symbol = s; |
343 | s = get_symtab_entry(istate->ra); |
343 | s = get_symtab_entry(istate->ra); |
344 | if (s) |
344 | if (s) |
345 | sym2 = s; |
345 | sym2 = s; |
346 | 346 | ||
347 | fault_if_from_uspace(istate, "TLB Refill Exception on %P", cp0_badvaddr_read()); |
347 | fault_if_from_uspace(istate, "TLB Refill Exception on %p", cp0_badvaddr_read()); |
348 | panic("%X: TLB Refill Exception at %X(%s<-%s)\n", cp0_badvaddr_read(), istate->epc, symbol, sym2); |
348 | panic("%x: TLB Refill Exception at %x(%s<-%s)\n", cp0_badvaddr_read(), istate->epc, symbol, sym2); |
349 | } |
349 | } |
350 | 350 | ||
351 | 351 | ||
352 | void tlb_invalid_fail(istate_t *istate) |
352 | void tlb_invalid_fail(istate_t *istate) |
353 | { |
353 | { |
354 | char *symbol = ""; |
354 | char *symbol = ""; |
355 | 355 | ||
356 | char *s = get_symtab_entry(istate->epc); |
356 | char *s = get_symtab_entry(istate->epc); |
357 | if (s) |
357 | if (s) |
358 | symbol = s; |
358 | symbol = s; |
359 | fault_if_from_uspace(istate, "TLB Invalid Exception on %P", cp0_badvaddr_read()); |
359 | fault_if_from_uspace(istate, "TLB Invalid Exception on %p", cp0_badvaddr_read()); |
360 | panic("%X: TLB Invalid Exception at %X(%s)\n", cp0_badvaddr_read(), istate->epc, symbol); |
360 | panic("%x: TLB Invalid Exception at %x(%s)\n", cp0_badvaddr_read(), istate->epc, symbol); |
361 | } |
361 | } |
362 | 362 | ||
363 | void tlb_modified_fail(istate_t *istate) |
363 | void tlb_modified_fail(istate_t *istate) |
364 | { |
364 | { |
365 | char *symbol = ""; |
365 | char *symbol = ""; |
366 | 366 | ||
367 | char *s = get_symtab_entry(istate->epc); |
367 | char *s = get_symtab_entry(istate->epc); |
368 | if (s) |
368 | if (s) |
369 | symbol = s; |
369 | symbol = s; |
370 | fault_if_from_uspace(istate, "TLB Modified Exception on %P", cp0_badvaddr_read()); |
370 | fault_if_from_uspace(istate, "TLB Modified Exception on %p", cp0_badvaddr_read()); |
371 | panic("%X: TLB Modified Exception at %X(%s)\n", cp0_badvaddr_read(), istate->epc, symbol); |
371 | panic("%x: TLB Modified Exception at %x(%s)\n", cp0_badvaddr_read(), istate->epc, symbol); |
372 | } |
372 | } |
373 | 373 | ||
374 | /** Try to find PTE for faulting address |
374 | /** Try to find PTE for faulting address |
375 | * |
375 | * |
376 | * Try to find PTE for faulting address. |
376 | * Try to find PTE for faulting address. |