Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/libcfa/concurrency/preemption.c

    r85b1deb ra43c561  
    260260static void preempt( processor * this ) {
    261261        sigval_t value = { PREEMPT_NORMAL };
     262        pthread_sigqueue( this->kernel_thread, SIGUSR1, value );
     263}
     264
     265// kill wrapper : signal a processor
     266void terminate(processor * this) {
     267        disable_interrupts();
     268        __atomic_store_n(&this->do_terminate, true, __ATOMIC_SEQ_CST);
     269        wake( this );
     270        sigval_t value = { PREEMPT_TERMINATE };
     271        enable_interrupts( __cfaabi_dbg_ctx );
    262272        pthread_sigqueue( this->kernel_thread, SIGUSR1, value );
    263273}
Note: See TracChangeset for help on using the changeset viewer.