- File:
-
- 1 edited
-
libcfa/src/concurrency/kernel.cfa (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/kernel.cfa
r8e16177 rc66f6cb 256 256 } 257 257 258 void ?{}(cluster & this, const char name[], Duration preemption_rate , int io_flags) with( this ) {258 void ?{}(cluster & this, const char name[], Duration preemption_rate) with( this ) { 259 259 this.name = name; 260 260 this.preemption_rate = preemption_rate; … … 270 270 threads{ __get }; 271 271 272 __kernel_io_startup( this, io_flags,&this == mainCluster );272 __kernel_io_startup( this, &this == mainCluster ); 273 273 274 274 doregister(this); … … 901 901 // Wake them up 902 902 __cfadbg_print_safe(runtime_core, "Kernel : waking Processor %p\n", this->idles.head); 903 /* paranoid */ verify( ! kernelTLS.preemption_state.enabled );904 903 post( this->idles.head->idle ); 905 904 … … 912 911 static bool __wake_proc(processor * this) { 913 912 __cfadbg_print_safe(runtime_core, "Kernel : waking Processor %p\n", this); 914 915 disable_interrupts(); 916 /* paranoid */ verify( ! kernelTLS.preemption_state.enabled ); 917 bool ret = post( this->idle ); 918 enable_interrupts( __cfaabi_dbg_ctx ); 919 920 return ret; 913 return post( this->idle ); 921 914 } 922 915 … … 1000 993 void ^?{}(semaphore & this) {} 1001 994 1002 boolP(semaphore & this) with( this ){995 void P(semaphore & this) with( this ){ 1003 996 lock( lock __cfaabi_dbg_ctx2 ); 1004 997 count -= 1; … … 1010 1003 unlock( lock ); 1011 1004 park( __cfaabi_dbg_ctx ); 1012 return true;1013 1005 } 1014 1006 else { 1015 1007 unlock( lock ); 1016 return false;1017 1008 } 1018 1009 }
Note:
See TracChangeset
for help on using the changeset viewer.