Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/interrupt/interrupt.c

    r5bcf1f9 r1ad52de  
    4545#include <console/console.h>
    4646#include <console/cmd.h>
     47#include <ipc/event.h>
    4748#include <synch/mutex.h>
    4849#include <time/delay.h>
     
    187188        printf("\n");
    188189       
    189         task_kill_self(true);
     190        /*
     191         * Userspace can subscribe for FAULT events to take action
     192         * whenever a thread faults. (E.g. take a dump, run a debugger).
     193         * The notification is always available, but unless Udebug is enabled,
     194         * that's all you get.
     195         */
     196        if (event_is_subscribed(EVENT_FAULT)) {
     197                /* Notify the subscriber that a fault occurred. */
     198                event_notify_3(EVENT_FAULT, LOWER32(TASK->taskid),
     199                    UPPER32(TASK->taskid), (sysarg_t) THREAD);
     200               
     201#ifdef CONFIG_UDEBUG
     202                /* Wait for a debugging session. */
     203                udebug_thread_fault();
     204#endif
     205        }
     206       
     207        task_kill(TASK->taskid);
     208        thread_exit();
    190209}
    191210
Note: See TracChangeset for help on using the changeset viewer.