
Go to the source code of this file.
Data Structures | |
| struct | CthThreadBase |
| struct | CthThreadStruct |
| struct | CthProcInfo |
| struct | CthThreadStruct |
| struct | CthThreadStruct |
| struct | CthThreadStruct |
| struct | CthThreadStruct |
Typedefs | |
| typedef struct CthProcInfo * | CthProcInfo |
| typedef VOID(WINAPI * | PFIBER_START_ROUTINE )(LPVOID lpFiberParameter) |
| typedef PFIBER_START_ROUTINE | LPFIBER_START_ROUTINE |
| typedef CthThread * | threadTable |
| typedef void(* | uJcontext_fn_t )(void) |
Functions | |
| int | CmiThreadIs (int flag) |
| CthThreadToken * | CthGetToken (CthThread t) |
| CpvStaticDeclare (int, Cth_serialNo) | |
| int | CthAliasCreate (int stackSize) |
| Create an aliasable area of this size. | |
| void | CthAliasFree (int fd) |
| void | CthAliasEnable (CthThreadBase *t) |
| CthCpvStatic (CthThread, CthCurrent) | |
| CthCpvDeclare (char *, CthData) | |
| CthCpvStatic (int, CthDatasize) | |
| void | CthSetThreadID (CthThread th, int a, int b, int c) |
| CmiObjId * | CthGetThreadID (CthThread th) |
| char * | CthGetData (CthThread t) |
| static void | CthFixData (CthThread t) |
| int | CthRegister (int size) |
| Allocate another size bytes of thread-local storage, and return the offset into the thread storage buffer. | |
| void | CthRegistered (int maxOffset) |
| Make sure we have room to store up to at least maxOffset bytes of thread-local storage. | |
| CthCpvStatic (int, _defaultStackSize) | |
| void | CthSetSerialNo (CthThread t, int no) |
| static void | CthThreadBaseInit (CthThreadBase *th) |
| static void * | CthAllocateStack (CthThreadBase *th, int *stackSize, int useMigratable) |
| static void | CthThreadBaseFree (CthThreadBase *th) |
| CpvDeclare (int, _numSwitches) | |
| static void | CthBaseInit (char **argv) |
| int | CthImplemented () |
| CthThread | CthSelf () |
| void | CthPupBase (pup_er p, CthThreadBase *t, int useMigratable) |
| static void | CthThreadFinished (CthThread t) |
| void | CthSetSuspendable (CthThread t, int val) |
| int | CthIsSuspendable (CthThread t) |
| void | CthSetNext (CthThread t, CthThread v) |
| CthThread | CthGetNext (CthThread t) |
| static void | CthNoStrategy (void) |
| void | CthSetStrategy (CthThread t, CthAwkFn awkfn, CthThFn chsfn) |
| static void | CthBaseResume (CthThread t) |
| void | CthSwitchThread (CthThread t) |
| switch the thread to t | |
| void | CthSuspend (void) |
| void | CthAwaken (CthThread th) |
| void | CthYield () |
| void | CthAwakenPrio (CthThread th, int s, int pb, unsigned int *prio) |
| void | CthYieldPrio (int s, int pb, unsigned int *prio) |
| void | CthAddListener (CthThread t, struct CthThreadListener *l) |
| This listener is about to begin receiving suspend and resume events for this thread. | |
| int | CthMigratable () |
| CthThread | CthPup (pup_er p, CthThread t) |
| CthCpvDeclare (CthProcInfo, CthProc) | |
| static void | CthThreadInit (CthThread t, CthVoidFn fn, void *arg) |
| static void | CthThreadFree (CthThread t) |
| void | CthFree (CthThread t) |
| void | CthDummy () |
| void | CthInit (char **argv) |
| static void | CthOnly (CthThread t, void *dum1, void *dum2) |
| size_t | CthStackOffset (CthThread t, char *p) |
| char * | CthPointer (CthThread t, size_t pos) |
| static void | CthResume1 (qt_t *sp, CthProcInfo proc, CthThread t) |
| void | CthResume (CthThread t) |
| CthThread | CthCreate (CthVoidFn fn, void *arg, int size) |
| CthThread | CthCreateMigratable (CthVoidFn fn, void *arg, int size) |
| WINBASEAPI LPVOID WINAPI | CreateFiber (DWORD dwStackSize, LPFIBER_START_ROUTINE lpStartAddress, LPVOID lpParameter) |
| WINBASEAPI LPVOID WINAPI | CreateFiberEx (SIZE_T dwStackCommitSize, SIZE_T dwStackReserveSize, DWORD dwFlags, LPFIBER_START_ROUTINE lpStartAddress, LPVOID lpParameter) |
| WINBASEAPI VOID WINAPI | DeleteFiber (LPVOID lpFiber) |
| WINBASEAPI LPVOID WINAPI | ConvertThreadToFiber (LPVOID lpParameter) |
| WINBASEAPI VOID WINAPI | SwitchToFiber (LPVOID lpFiber) |
| WINBASEAPI BOOL WINAPI | SwitchToThread (VOID) |
| CthCpvStatic (CthThread, CthPrevious) | |
| CthCpvStatic (int, tablesize) | |
| CthCpvStatic (threadTable, exitThreads) | |
| CthCpvStatic (int, nExit) | |
| static void | CthThreadInit (CthThread t) |
| static void | CthClearThreads () |
| void | CthFiberBlock (CthThread t) |
| VOID CALLBACK | FiberSetUp (PVOID fiberData) |
| CthCpvStatic (pthread_mutex_t, sched_mutex) | |
| The sched_mutex is the current token of execution. | |
| static void * | CthOnly (void *arg) |
| CpvStaticDeclare (CthThread, doomedThreadPool) | |
| void | CthStartThread (CmiUInt4 fn1, CmiUInt4 fn2, CmiUInt4 arg1, CmiUInt4 arg2) |
| void | CthStartThread (qt_userf_t fn, void *arg) |
| int | ptrDiffLen (const void *a, const void *b) |
| static CthThread | CthCreateInner (CthVoidFn fn, void *arg, int size, int migratable) |
| void | setProtection (char *, char *, int, int) |
| static CthThread | CthThreadInit (void) |
| static void * | CthAbortHelp (qt_t *sp, CthThread old, void *null) |
| static void * | CthBlockHelp (qt_t *sp, CthThread old, void *null) |
| static void | CthOnly (void *arg, void *vt, qt_userf_t fn) |
| void | CthPrintThdStack (CthThread t) |
| void | CthTraceResume (CthThread t) |
| void | CthPrintThdMagic (CthThread t) |
Variables | |
| static int | CmiThreadIs_flag = 0 |
| CthThreadBase * | _curMappedStack = 0 |
| CthAliasEnable brings this thread's stack into memory. | |
| typedef struct CthProcInfo* CthProcInfo |
| typedef VOID(WINAPI * PFIBER_START_ROUTINE)(LPVOID lpFiberParameter) |
| typedef CthThread* threadTable |
| typedef void(* uJcontext_fn_t)(void) |
| CthThreadToken* CthGetToken | ( | CthThread | t | ) |
| CpvStaticDeclare | ( | int | , | |
| Cth_serialNo | ||||
| ) |
Create an aliasable area of this size.
Returns alias handle.
Definition at line 238 of file threads.c.
References CmiAbort(), and write().
Referenced by CthAllocateStack().
| void CthAliasFree | ( | int | fd | ) |
| void CthAliasEnable | ( | CthThreadBase * | t | ) |
Definition at line 269 of file threads.c.
References CthThreadBase::aliasStackHandle, CmiAbort(), dest, CthThreadBase::isMigratable, printf(), s, CthThreadBase::stack, and CthThreadBase::stacksize.
Referenced by CthBaseResume(), CthCreateInner(), and CthPupBase().
| CthCpvStatic | ( | CthThread | , | |
| CthCurrent | ||||
| ) |
| CthCpvDeclare | ( | char * | , | |
| CthData | ||||
| ) |
| CthCpvStatic | ( | int | , | |
| CthDatasize | ||||
| ) |
Definition at line 316 of file threads.c.
Referenced by CkMigratable::CkAddThreadListeners(), Group::CkAddThreadListeners(), and Chare::CkAddThreadListeners().
| static void CthFixData | ( | CthThread | t | ) | [inline, static] |
Definition at line 338 of file threads.c.
References data, and realloc().
Referenced by CthBaseResume(), CthRegister(), CthRegistered(), and CthThreadBaseInit().
Allocate another size bytes of thread-local storage, and return the offset into the thread storage buffer.
Definition at line 355 of file threads.c.
References CthFixData(), and CthThreadBase::data.
Referenced by Cpthread_key_create().
| void CthRegistered | ( | int | maxOffset | ) |
Make sure we have room to store up to at least maxOffset bytes of thread-local storage.
Definition at line 374 of file threads.c.
References CthFixData(), and CthThreadBase::data.
| CthCpvStatic | ( | int | , | |
| _defaultStackSize | ||||
| ) |
| static void CthThreadBaseInit | ( | CthThreadBase * | th | ) | [static] |
Definition at line 391 of file threads.c.
References CthThreadBase::aliasStackHandle, CthThreadBase::awakenfn, CthThreadBase::choosefn, CmiMyPe(), CthFixData(), CthSetStrategyDefault(), CthThreadBase::data, CthThreadBase::datasize, CthThreadBase::exiting, _CmiObjId::id, CthThreadBase::isMigratable, CthThreadBase::listener, CthThreadBase::magic, malloc(), CthThreadBase::next, CthThreadBase::scheduled, CthThreadToken::serialNo, CthThreadBase::stack, CthThreadBase::stacksize, CthThreadBase::suspendable, CthThreadToken::thread, CthThreadBase::tid, and CthThreadBase::token.
Referenced by CthThreadInit().
| static void* CthAllocateStack | ( | CthThreadBase * | th, | |
| int * | stackSize, | |||
| int | useMigratable | |||
| ) | [static] |
Definition at line 430 of file threads.c.
References CthThreadBase::aliasStackHandle, CmiIsomalloc(), CthAliasCreate(), CthThreadBase::isMigratable, malloc(), CthThreadBase::stack, and CthThreadBase::stacksize.
Referenced by CthCreateInner(), and CthPupBase().
| static void CthThreadBaseFree | ( | CthThreadBase * | th | ) | [static] |
Definition at line 450 of file threads.c.
References CthThreadBase::aliasStackHandle, CmiIsomallocFree(), CthAliasFree(), CthThreadBase::data, CthThreadListener::free, free(), CthThreadBase::isMigratable, CthThreadBase::listener, CthThreadListener::next, CthThreadBase::scheduled, CthThreadBase::stack, CthThreadToken::thread, and CthThreadBase::token.
Referenced by CthThreadFree().
| CpvDeclare | ( | int | , | |
| _numSwitches | ||||
| ) |
| static void CthBaseInit | ( | char ** | argv | ) | [static] |
| CthThread CthSelf | ( | void | ) |
Definition at line 514 of file threads.c.
Referenced by CfutureWait(), Tempo::ckTempoRecv(), CkWaitFutureID(), CmiIsomalloc(), CmiIsomallocBlockListPup(), CpmThread3(), Cpthread_cond_wait(), Cpthread_join(), Cpthread_mutex_lock(), Cpthread_mutex_trylock(), Cpthread_mutex_unlock(), CthFree(), CthOnly(), CthResumeSchedulingThread(), CthSchedInit(), CthStartThread(), PythonObject::executeThread(), FiberSetUp(), MSA_CacheGroup< ENTRY_TYPE, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::getListener(), TCharm::getSema(), SearchGroup::getTotalSolutions(), CkCallback::impl_thread_delay(), ParFUMShadowArray::lockRegion(), PUPmarshall(), TCharm::stop(), MSA_Thread_Listener::suspend(), TCharm::TCharm(), Tempo::Tempo(), CkSema::wait(), CkSema::waitN(), and waitqd_QDChare::waitQD().
| void CthPupBase | ( | pup_er | p, | |
| CthThreadBase * | t, | |||
| int | useMigratable | |||
| ) |
Definition at line 519 of file threads.c.
References _BgOutOfCoreFlag, CthThreadBase::awakenfn, CthThreadBase::choosefn, CmiAbort(), CmiIsomallocPup(), CthAliasEnable(), CthAllocateStack(), CthThreadBase::data, CthThreadBase::datasize, CthThreadBase::isMigratable, CthThreadBase::listener, CthThreadBase::magic, malloc(), tlsseg_t::memseg, CthThreadBase::next, pup_bytes(), pup_isUnpacking(), CthThreadBase::scheduled, CthThreadToken::serialNo, tlsseg_t::size, CthThreadBase::stack, CthThreadBase::stacksize, CthThreadBase::suspendable, CthThreadToken::thread, CthThreadBase::tlsseg, and CthThreadBase::token.
Referenced by CthPup().
| static void CthThreadFinished | ( | CthThread | t | ) | [static] |
Definition at line 628 of file threads.c.
References CthSuspend().
Referenced by CthOnly(), CthStartThread(), and FiberSetUp().
Definition at line 640 of file threads.c.
Referenced by CfutureWait(), CkWaitFutureID(), and CthResumeSchedulingThread().
Definition at line 641 of file threads.c.
Referenced by CfutureAwaken(), CthSuspendSchedulingThread(), and setFuture().
| static void CthNoStrategy | ( | void | ) | [static] |
Definition at line 643 of file threads.c.
References CmiAbort().
Referenced by CthAwaken(), CthAwakenPrio(), and CthSuspend().
Definition at line 648 of file threads.c.
Referenced by CthSchedInit(), CthSetStrategyDefault(), and CthSuspendSchedulingThread().
| static void CthBaseResume | ( | CthThread | t | ) | [inline, static] |
Definition at line 657 of file threads.c.
References CthAliasEnable(), CthFixData(), CthThreadListener::next, and CthThreadListener::resume.
Referenced by CthResume(), CthResume1(), and CthSwitchThread().
| void CthSwitchThread | ( | CthThread | t | ) |
| void CthSuspend | ( | void | ) |
Sometimes, a CthThread is running without ever being awakened In this case, the scheduled is the initialized value "0"
Definition at line 681 of file threads.c.
References CthThreadBase::choosefn, CmiAbort(), CthNoStrategy(), CthResume(), CthThreadBase::listener, CthThreadListener::next, CthThreadBase::scheduled, CthThreadListener::suspend, CthThreadBase::suspendable, and traceSuspend().
Referenced by CfutureWait(), Tempo::ckTempoRecv(), CkWaitFutureID(), CPathRecv(), CpmThread3(), Cpthread_cond_wait(), Cpthread_exit(), Cpthread_join(), Cpthread_mutex_lock(), CthThreadFinished(), CthYield(), CthYieldPrio(), SearchGroup::getTotalSolutions(), CkCallback::impl_thread_delay(), ParFUMShadowArray::lockRegion(), TCharm::stop(), MSA_Thread_Listener::suspend(), ParFUMShadowArray::unlockRegion(), ParFUMShadowArray::unpendRegion(), CkSema::wait(), CkSema::waitN(), and waitqd_QDChare::waitQD().
| void CthAwaken | ( | CthThread | th | ) |
Definition at line 720 of file threads.c.
References CthNoStrategy(), and traceAwaken().
Referenced by CfutureAwaken(), SearchGroup::childCount(), CPathGetSingle(), CPathSendHandler(), CpmThread2(), CpmThreadSize2(), Cpthread_cond_broadcast(), Cpthread_cond_signal(), Cpthread_cond_wait(), Cpthread_create3(), Cpthread_exit(), Cpthread_mutex_unlock(), CthYield(), ParFUMShadowArray::lockReply(), waitqd_QDChare::onQD(), CkCallback::send(), setFuture(), MSA_Thread_Listener::signal(), CkSema::signal(), TCharm::start(), Tempo::tempoGeneric(), and ParFUMShadowArray::unlockReply().
| void CthYield | ( | void | ) |
Definition at line 742 of file threads.c.
References CthAwaken(), and CthSuspend().
Referenced by chunk::addRemoteEdge(), FEM_Adapt_Algs::Coarsen(), chunk::coarseningElements(), FEM_AdaptL::edge_bisect(), FEM_AdaptL::edge_contraction(), FEM_AdaptL::edge_contraction_help(), FEM_AdaptL::edge_flip(), chunk::getAccessLock(), chunk::getAdjustLock(), FEM_MUtil::idxllockLocal(), MeshStreamer< dtype >::insertData(), FEM_lock::lock(), element::lockArc(), element::lockLF(), FEM_AdaptL::lockNodes(), NetFEM_Begin(), ParFUMShadowArray::recv_splits(), FEM_Adapt_Algs::Refine(), Bulk_Adapt::Refine_h(), element::refineCP(), element::refineLE(), element::refineLF(), chunk::refiningElements(), FEM_lock::unlock(), and FEM_AdaptL::vertex_remove().
Definition at line 748 of file threads.c.
References CthNoStrategy(), and traceAwaken().
Referenced by CthYieldPrio().
| void CthAddListener | ( | CthThread | th, | |
| struct CthThreadListener * | l | |||
| ) |
This listener is about to begin receiving suspend and resume events for this thread.
"suspend", "resume", "free", and "data" fields must all already be set. When this thread exits, l->free will be called on this listener, which should deallocate the listener memory.
Definition at line 772 of file threads.c.
References CthThreadListener::next, p, and CthThreadListener::thread.
Referenced by CkMigratable::CkAddThreadListeners(), and TraceProjections::traceAddThreadListeners().
| int CthMigratable | ( | ) |
Definition at line 842 of file threads.c.
References CmiAbort(), CthFree(), CthPupBase(), malloc(), pup_bytes(), pup_isDeleting(), and pup_isUnpacking().
Referenced by TCharm::pupThread().
| CthCpvDeclare | ( | CthProcInfo | , | |
| CthProc | ||||
| ) |
Definition at line 874 of file threads.c.
References CthThreadStruct::base, CthThreadBaseInit(), CthThreadStruct::savedptr, CthThreadStruct::savedsize, CthThreadStruct::savedstack, CthThreadStruct::stacklen, CthThreadStruct::startarg, and CthThreadStruct::startfn.
Referenced by CthCreate(), CthCreateInner(), and CthInit().
| static void CthThreadFree | ( | CthThread | t | ) | [static] |
Definition at line 885 of file threads.c.
References CthThreadStruct::base, CthThreadBaseFree(), free(), and CthThreadStruct::savedstack.
Referenced by CthAbortHelp(), CthClearThreads(), CthFiberBlock(), CthFree(), and CthResume1().
| void CthFree | ( | CthThread | t | ) |
Definition at line 892 of file threads.c.
References CthThreadStruct::base, CthClearThreads(), CthSelf(), CthThreadFree(), CthThreadBase::exiting, free(), and malloc().
Referenced by TCharm::clear(), CpmThread3(), Cpthread_exit(), CthPup(), and TCharm::~TCharm().
| void CthDummy | ( | ) |
| void CthInit | ( | char ** | argv | ) |
Definition at line 906 of file threads.c.
References CthBaseInit(), CthDummy(), CthThreadInit(), malloc(), p, CthProcInfo::stackbase, CthProcInfo::switchbuf, and CthProcInfo::switchbuf_sp.
Referenced by ConverseInit(), ConverseRunPE(), and KillOnAllSigs().
| static void CthOnly | ( | CthThread | t, | |
| void * | dum1, | |||
| void * | dum2 | |||
| ) | [static] |
Definition at line 941 of file threads.c.
References CthThreadFinished(), CthThreadStruct::startarg, and CthThreadStruct::startfn.
Referenced by CthResume1().
| size_t CthStackOffset | ( | CthThread | t, | |
| char * | p | |||
| ) |
Definition at line 950 of file threads.c.
References s, CthThreadStruct::stack, and CthProcInfo::stackbase.
Referenced by TCharm::UserData::UserData().
| char* CthPointer | ( | CthThread | t, | |
| size_t | pos | |||
| ) |
Definition at line 956 of file threads.c.
References p, CthThreadStruct::savedsize, CthThreadStruct::savedstack, CthThreadStruct::stack, and CthProcInfo::stackbase.
Referenced by TCharm::UserData::getData(), and TCharm::UserData::pup().
| static void CthResume1 | ( | qt_t * | sp, | |
| CthProcInfo | proc, | |||
| CthThread | t | |||
| ) | [static] |
Definition at line 973 of file threads.c.
References CthThreadStruct::base, bytes, CthBaseResume(), CthDummy(), CthOnly(), CthThreadFree(), CthThreadBase::exiting, free(), malloc(), CthThreadStruct::savedptr, CthThreadStruct::savedsize, CthThreadStruct::savedstack, CthProcInfo::stackbase, and CthThreadStruct::stacklen.
Referenced by CthResume().
| void CthResume | ( | CthThread | t | ) |
Definition at line 1013 of file threads.c.
References CthThreadStruct::base, CthBaseResume(), CthFiberBlock(), CthResume1(), CthThreadBase::exiting, CthThreadStruct::fiber, CthProcInfo::switchbuf_sp, and SwitchToFiber().
Referenced by CpdPythonGroup::cpdCheck(), CthResumeNormalThread(), CthResumeNormalThreadDebug(), CthResumeSchedulingThread(), CthSuspend(), and PythonObject::execute().
Definition at line 1020 of file threads.c.
References CmiAbort(), CreateFiberEx(), CthThreadInit(), CthThreadStruct::fiber, FiberSetUp(), and malloc().
Referenced by CPathGetSingle(), CpdPythonGroup::cpdCheck(), CpmThread2(), CpmThreadSize2(), Cpthread_create3(), CthCreateMigratable(), CthSuspendSchedulingThread(), PythonObject::execute(), and TCharm::TCharm().
| WINBASEAPI LPVOID WINAPI CreateFiber | ( | DWORD | dwStackSize, | |
| LPFIBER_START_ROUTINE | lpStartAddress, | |||
| LPVOID | lpParameter | |||
| ) |
| WINBASEAPI LPVOID WINAPI CreateFiberEx | ( | SIZE_T | dwStackCommitSize, | |
| SIZE_T | dwStackReserveSize, | |||
| DWORD | dwFlags, | |||
| LPFIBER_START_ROUTINE | lpStartAddress, | |||
| LPVOID | lpParameter | |||
| ) |
Referenced by CthCreate().
| WINBASEAPI VOID WINAPI DeleteFiber | ( | LPVOID | lpFiber | ) |
| WINBASEAPI LPVOID WINAPI ConvertThreadToFiber | ( | LPVOID | lpParameter | ) |
| WINBASEAPI VOID WINAPI SwitchToFiber | ( | LPVOID | lpFiber | ) |
Referenced by CthFiberBlock(), and CthResume().
| WINBASEAPI BOOL WINAPI SwitchToThread | ( | VOID | ) |
| CthCpvStatic | ( | CthThread | , | |
| CthPrevious | ||||
| ) |
| CthCpvStatic | ( | int | , | |
| tablesize | ||||
| ) |
| CthCpvStatic | ( | threadTable | , | |
| exitThreads | ||||
| ) |
| CthCpvStatic | ( | int | , | |
| nExit | ||||
| ) |
| static void CthThreadInit | ( | CthThread | t | ) | [static] |
Definition at line 1120 of file threads.c.
References CthThreadStruct::base, and CthThreadBaseInit().
| static void CthClearThreads | ( | ) | [static] |
Definition at line 1161 of file threads.c.
References CthThreadFree(), n, and p.
Referenced by CthFree(), and FiberSetUp().
| void CthFiberBlock | ( | CthThread | t | ) |
Definition at line 1220 of file threads.c.
References CthThreadFree(), CthThreadStruct::fiber, and SwitchToFiber().
Referenced by CthResume().
| VOID CALLBACK FiberSetUp | ( | PVOID | fiberData | ) |
Definition at line 1250 of file threads.c.
References CthClearThreads(), CthSelf(), CthThreadFinished(), and ptr.
Referenced by CthCreate().
| CthCpvStatic | ( | pthread_mutex_t | , | |
| sched_mutex | ||||
| ) |
The sched_mutex is the current token of execution.
Only the running thread holds this lock; all other threads have released the lock and are waiting on their condition variable.
| static void* CthOnly | ( | void * | arg | ) | [static] |
Definition at line 1388 of file threads.c.
References CthThreadStruct::arg, CthThreadStruct::cond, CthThreadStruct::creator, CthThreadFinished(), CthThreadStruct::fn, and CthThreadStruct::inited.
| CpvStaticDeclare | ( | CthThread | , | |
| doomedThreadPool | ||||
| ) |
Definition at line 1617 of file threads.c.
References CthSelf(), and CthThreadFinished().
Referenced by CthCreateInner().
| void CthStartThread | ( | qt_userf_t | fn, | |
| void * | arg | |||
| ) |
| int ptrDiffLen | ( | const void * | a, | |
| const void * | b | |||
| ) |
Definition at line 1644 of file threads.c.
References allocNewTLSSeg(), CthThreadStruct::base, CmiAbort(), CthThreadStruct::context, CthAliasEnable(), CthAllocateStack(), CthStartThread(), CthThreadInit(), errno, getJcontext(), makeJcontext(), malloc(), ptrDiffLen(), uJcontext_stack_t::ss_flags, uJcontext_stack_t::ss_size, uJcontext_stack_t::ss_sp, CthThreadBase::stack, uJcontext_t::uc_link, and uJcontext_t::uc_stack.
| static CthThread CthThreadInit | ( | void | ) | [static] |
Definition at line 1825 of file threads.c.
References CthThreadStruct::base, CthThreadBaseInit(), malloc(), CthThreadStruct::protect, and CthThreadStruct::protlen.
| static void* CthAbortHelp | ( | qt_t * | sp, | |
| CthThread | old, | |||
| void * | null | |||
| ) | [static] |
| static void* CthBlockHelp | ( | qt_t * | sp, | |
| CthThread | old, | |||
| void * | null | |||
| ) | [static] |
| static void CthOnly | ( | void * | arg, | |
| void * | vt, | |||
| qt_userf_t | fn | |||
| ) | [static] |
| void CthPrintThdStack | ( | CthThread | t | ) |
Definition at line 1990 of file threads.c.
References CthThreadStruct::base, CmiPrintf(), CthThreadBase::stack, and CthThreadStruct::stackp.
| void CthTraceResume | ( | CthThread | t | ) |
Definition at line 2022 of file threads.c.
References CthThreadStruct::base, CthThreadBase::tid, and traceResume().
Referenced by CthResumeNormalThread(), CthResumeNormalThreadDebug(), CthResumeSchedulingThread(), PUPmarshall(), and ampi::recv().
| void CthPrintThdMagic | ( | CthThread | t | ) |
Definition at line 2028 of file threads.c.
References CthThreadStruct::base, CmiPrintf(), and CthThreadBase::magic.
int CmiThreadIs_flag = 0 [static] |
1.5.5