- File:
-
- 1 edited
-
src/libcfa/concurrency/kernel_private.h (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/libcfa/concurrency/kernel_private.h
r6b0b624 rd6ff3ff 1 // -*- Mode: CFA -*- 1 2 // 2 3 // Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo … … 9 10 // Author : Thierry Delisle 10 11 // Created On : Mon Feb 13 12:27:26 2017 11 // Last Modified By : Peter A. Buhr12 // Last Modified On : Sat Jul 22 09:58:09 201713 // Update Count : 212 // Last Modified By : Thierry Delisle 13 // Last Modified On : -- 14 // Update Count : 0 14 15 // 15 16 16 #pragma once 17 #ifndef KERNEL_PRIVATE_H 18 #define KERNEL_PRIVATE_H 17 19 18 20 #include "libhdr.h" … … 29 31 extern "C" { 30 32 void disable_interrupts(); 31 void enable_interrupts_no Poll();33 void enable_interrupts_noRF(); 32 34 void enable_interrupts( DEBUG_CTX_PARAM ); 33 35 } … … 43 45 thread_desc * nextThread(cluster * this); 44 46 45 //Block current thread and release/wake-up the following resources46 47 void BlockInternal(void); 47 48 void BlockInternal(spinlock * lock); … … 64 65 void spin(processor * this, unsigned int * spin_count); 65 66 66 struct event_kernel_t { 67 struct system_proc_t { 68 processor proc; 69 67 70 alarm_list_t alarms; 68 spinlock lock; 71 spinlock alarm_lock; 72 73 bool pending_alarm; 69 74 }; 70 75 71 extern event_kernel_t * event_kernel; 72 73 extern thread_local coroutine_desc * volatile this_coroutine; 74 extern thread_local thread_desc * volatile this_thread; 75 extern thread_local processor * volatile this_processor; 76 76 extern cluster * systemCluster; 77 extern system_proc_t * systemProcessor; 78 extern volatile thread_local processor * this_processor; 79 extern volatile thread_local coroutine_desc * this_coroutine; 80 extern volatile thread_local thread_desc * this_thread; 77 81 extern volatile thread_local bool preemption_in_progress; 78 82 extern volatile thread_local unsigned short disable_preempt_count; … … 87 91 extern void ThreadCtxSwitch(coroutine_desc * src, coroutine_desc * dst); 88 92 89 //----------------------------------------------------------------------------- 90 // Utils 91 #define KERNEL_STORAGE(T,X) static char storage_##X[sizeof(T)] 93 #endif //KERNEL_PRIVATE_H 92 94 93 95 // Local Variables: //
Note:
See TracChangeset
for help on using the changeset viewer.