Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/include/interrupt.h

    ra074b4f ra5c86478  
    4646typedef void (* iroutine)(int n, istate_t *istate);
    4747
    48 extern void fault_if_from_uspace(istate_t *istate, char *fmt, ...);
     48#define fault_if_from_uspace(istate, fmt, ...) \
     49{ \
     50        if (istate_from_uspace(istate)) { \
     51                task_t *task = TASK; \
     52                printf("Task %s (%" PRIu64 ") killed due to an exception at " \
     53                    "program counter %p.\n", task->name, task->taskid, istate_get_pc(istate)); \
     54                stack_trace_istate(istate); \
     55                printf("Kill message: " fmt "\n", ##__VA_ARGS__); \
     56                task_kill(task->taskid); \
     57                thread_exit(); \
     58        } \
     59}
     60
    4961extern iroutine exc_register(int n, const char *name, iroutine f);
    5062extern void exc_dispatch(int n, istate_t *t);
Note: See TracChangeset for help on using the changeset viewer.