Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcfa/src/concurrency/io/setup.cfa

    r3c80ccc r0d72d45  
    149149                id.full_proc = false;
    150150                id.id = doregister(&id);
    151                 kernelTLS.this_proc_id = &id;
    152151                __cfaabi_dbg_print_safe( "Kernel : IO poller thread starting\n" );
    153152
     
    181180                                        kernelTLS.this_stats = io_ctx->self.curr_cluster->stats;
    182181                                #endif
    183                                 post( io_ctx->sem );
     182                                __post( io_ctx->sem, &id );
    184183                        }
    185184                }
     
    236235                        if( thrd.state == Ready || thrd.preempted != __NO_PREEMPTION ) {
    237236
    238                                 ready_schedule_lock();
     237                                ready_schedule_lock( (struct __processor_id_t *)active_processor() );
    239238
    240239                                        // This is the tricky case
     
    251250                                        // Fixup the thread state
    252251                                        thrd.state = Blocked;
    253                                         thrd.ticket = TICKET_BLOCKED;
     252                                        thrd.ticket = 0;
    254253                                        thrd.preempted = __NO_PREEMPTION;
    255254
    256                                 ready_schedule_unlock();
     255                                ready_schedule_unlock( (struct __processor_id_t *)active_processor() );
    257256
    258257                                // Pretend like the thread was blocked all along
     
    276275                        }
    277276                } else {
    278                         post( this.thrd.sem );
     277                        unpark( &thrd );
    279278                }
    280279
Note: See TracChangeset for help on using the changeset viewer.