- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/kernel/startup.cfa
rf2384c9a r1eb239e4 78 78 static void ?{}(processorCtx_t & this, processor * proc, current_stack_info_t * info); 79 79 80 #if defined(__CFA_WITH_VERIFY__)81 static bool verify_fwd_bck_rng(void);82 #endif83 84 80 //----------------------------------------------------------------------------- 85 81 // Forward Declarations for other modules … … 162 158 __cfa_dbg_global_clusters.list{ __get }; 163 159 __cfa_dbg_global_clusters.lock{}; 164 165 /* paranoid */ verify( verify_fwd_bck_rng() );166 160 167 161 // Initialize the global scheduler lock … … 522 516 ( this.terminated ){ 0 }; 523 517 ( this.runner ){}; 524 525 disable_interrupts(); 526 init( this, name, _cltr ); 527 enable_interrupts( __cfaabi_dbg_ctx ); 518 init( this, name, _cltr ); 528 519 529 520 __cfadbg_print_safe(runtime_core, "Kernel : Starting core %p\n", &this); … … 549 540 free( this.stack ); 550 541 551 disable_interrupts(); 552 deinit( this ); 553 enable_interrupts( __cfaabi_dbg_ctx ); 542 deinit( this ); 554 543 } 555 544 … … 683 672 return stack; 684 673 } 685 686 #if defined(__CFA_WITH_VERIFY__)687 static bool verify_fwd_bck_rng(void) {688 kernelTLS.ready_rng.fwd_seed = 25214903917_l64u * (rdtscl() ^ (uintptr_t)&verify_fwd_bck_rng);689 690 unsigned values[10];691 for(i; 10) {692 values[i] = __tls_rand_fwd();693 }694 695 __tls_rand_advance_bck();696 697 for ( i; 9 -~= 0 ) {698 if(values[i] != __tls_rand_bck()) {699 return false;700 }701 }702 703 return true;704 }705 #endif
Note:
See TracChangeset
for help on using the changeset viewer.