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. |