summaryrefslogtreecommitdiffstats
path: root/src/kernel/exception.C
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/exception.C')
-rw-r--r--src/kernel/exception.C11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/kernel/exception.C b/src/kernel/exception.C
index dad6ff676..2dd17e574 100644
--- a/src/kernel/exception.C
+++ b/src/kernel/exception.C
@@ -101,7 +101,11 @@ void kernel_execute_data_storage()
}
if (!handled)
{
- printk("Data Storage exception on %d: %lx, %lx @ %p\n",
+
+ printk("Data Storage exception! \n"
+ "TID: %d\nBad Address: %lx\n"
+ "Exception Type: %lx\n"
+ "Instruction where it occurred: %p\n",
t->tid, getDAR(), getDSISR(), t->context.nip);
MAGIC_INSTRUCTION(MAGIC_BREAK_ON_ERROR);
TaskManager::endTask(t, NULL, TASK_STATUS_CRASHED);
@@ -112,7 +116,10 @@ extern "C"
void kernel_execute_data_segment()
{
task_t* t = TaskManager::getCurrentTask();
- printk("Data Segment exception on %d: %lx @ %p\n",
+ printk("Data Segment exception!\n"
+ "TID: %d\n"
+ "Exception Type: %lx\n"
+ "Instruction where it occurred:%p\n",
t->tid, getDAR(), t->context.nip);
MAGIC_INSTRUCTION(MAGIC_BREAK_ON_ERROR);
TaskManager::endTask(t, NULL, TASK_STATUS_CRASHED);
OpenPOWER on IntegriCloud