47,7 → 47,6 |
#include <panic.h> |
#include <print.h> |
#include <symtab.h> |
#include <tdebug/tdebug.h> |
|
static struct { |
const char *name; |
87,19 → 86,8 |
void exc_dispatch(int n, istate_t *istate) |
{ |
ASSERT(n < IVT_ITEMS); |
|
if (THREAD && istate_from_uspace(istate)) { |
/* Record userspace state */ |
THREAD->tdebug.uspace_state = istate; |
} |
|
|
exc_table[n].f(n + IVT_FIRST, istate); |
|
if (THREAD && istate_from_uspace(istate)) { |
/* Clear it again (mostly for dev. and debugging purposes) */ |
THREAD->tdebug.uspace_state = NULL; |
} |
|
/* This is a safe place to exit exiting thread */ |
if (THREAD && THREAD->interrupted && istate_from_uspace(istate)) |
thread_exit(); |