Changeset abcae55 for libcfa/src/concurrency
- Timestamp:
- Sep 23, 2021, 12:29:35 PM (3 years ago)
- Branches:
- ADT, ast-experimental, enum, forall-pointer-decay, master, pthread-emulation, qualifiedEnum
- Children:
- 420b498
- Parents:
- ec421636
- Location:
- libcfa/src/concurrency
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/invoke.h
rec421636 rabcae55 170 170 bool corctx_flag; 171 171 172 int last_cpu;173 174 172 //SKULLDUGGERY errno is not save in the thread data structure because returnToKernel appears to be the only function to require saving and restoring it 175 173 -
libcfa/src/concurrency/kernel.cfa
rec421636 rabcae55 341 341 } 342 342 343 343 __STATS( if(this->print_halts) __cfaabi_bits_print_safe( STDOUT_FILENO, "PH:%d - %lld 0\n", this->unique_id, rdtscl()); ) 344 344 __cfadbg_print_safe(runtime_core, "Kernel : core %p waiting on eventfd %d\n", this, this->idle); 345 345 … … 423 423 __builtin_prefetch( thrd_dst->context.SP ); 424 424 425 int curr = __kernel_getcpu();426 if(thrd_dst->last_cpu != curr) {427 int64_t l = thrd_dst->last_cpu;428 int64_t c = curr;429 int64_t v = (l << 32) | c;430 __push_stat( __tls_stats(), v, false, "Processor", this );431 }432 433 thrd_dst->last_cpu = curr;434 435 425 __cfadbg_print_safe(runtime_core, "Kernel : core %p running thread %p (%s)\n", this, thrd_dst, thrd_dst->self_cor.name); 436 426 -
libcfa/src/concurrency/kernel/startup.cfa
rec421636 rabcae55 235 235 236 236 register_tls( mainProcessor ); 237 mainThread->last_cpu = __kernel_getcpu();238 237 239 238 //initialize the global state variables -
libcfa/src/concurrency/thread.cfa
rec421636 rabcae55 34 34 preempted = __NO_PREEMPTION; 35 35 corctx_flag = false; 36 disable_interrupts();37 last_cpu = __kernel_getcpu();38 enable_interrupts();39 36 curr_cor = &self_cor; 40 37 self_mon.owner = &this;
Note: See TracChangeset
for help on using the changeset viewer.