Example #1
0
void abort(void) {
    // don't use fatal() as this calls abort ;)
    log_write(Fatal, "tachyon aborted.\n");

    list_t* trace = ksym_trace();
    ksym_write_trace(Error, trace);
    ksym_delete(trace);

stop:
    asm("cli; hlt;");
    goto stop;
}
Example #2
0
void thr_abort(thread_t* target) {
    target->state = Aborting;

    error("thread %d in process %d aborted!\n", target->id, target->parent->id);

    list_t* trace = ksym_trace();
    ksym_write_trace(Error, trace);
    ksym_delete(trace);

    sysc_call(SysSchedule, 0, 0);

    /* never reached - as the thread is aborting, it will never be re-scheduled */
}
Example #3
0
void abort(void) {
    // don't use fatal() as this calls abort ;)
    log_write(Fatal, "tachyon aborted.\n");

    list_t* trace = ksym_trace();
    ksym_write_trace(Error, trace);
    ksym_delete(trace);

    vmem_mgmt_dump_spc(spc_current());

    intr_disable();

    stop:
        asm("cli; hlt;");
        goto stop;
}