X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Kernel%2Finclude%2Fthreads_int.h;h=6516b35af967b38bdeff97fe950c4738228c877e;hb=05abefc2a27a08f381bca41524a5d299c4839ff2;hp=ed2af53dd3cd5908d5c69cf48d46f63075589dc0;hpb=881a49e0164c582d24db527e474f587a8b5e0c32;p=tpg%2Facess2.git diff --git a/Kernel/include/threads_int.h b/Kernel/include/threads_int.h index ed2af53d..6516b35a 100644 --- a/Kernel/include/threads_int.h +++ b/Kernel/include/threads_int.h @@ -6,6 +6,7 @@ #define _THREADS_INT_H_ #include +#include /** * \brief IPC Message @@ -77,6 +78,7 @@ enum { THREAD_STAT_SLEEPING, // Message Sleep THREAD_STAT_MUTEXSLEEP, // Mutex Sleep THREAD_STAT_SEMAPHORESLEEP, // Semaphore Sleep + THREAD_STAT_QUEUESLEEP, // Queue THREAD_STAT_WAITING, // ??? (Waiting for a thread) THREAD_STAT_PREINIT, // Being created THREAD_STAT_ZOMBIE, // Died/Killed, but parent not informed @@ -89,6 +91,7 @@ static const char * const casTHREAD_STAT[] = { "THREAD_STAT_SLEEPING", "THREAD_STAT_MUTEXSLEEP", "THREAD_STAT_SEMAPHORESLEEP", + "THREAD_STAT_QUEUESLEEP", "THREAD_STAT_WAITING", "THREAD_STAT_PREINIT", "THREAD_STAT_ZOMBIE", @@ -98,6 +101,7 @@ static const char * const casTHREAD_STAT[] = { // === GLOBALS === extern BOOL gaThreads_NoTaskSwitch[MAX_CPUS]; +extern tShortSpinlock glThreadListLock; // === FUNCTIONS === extern tThread *Proc_GetCurThread(void); @@ -108,9 +112,10 @@ extern int Threads_Wake(tThread *Thread); extern void Threads_Kill(tThread *Thread, int Status); extern void Threads_AddActive(tThread *Thread); extern tThread *Threads_RemActive(void); +extern void Threads_Delete(tThread *Thread); extern tThread *Threads_GetNextToRun(int CPU, tThread *Last); -extern tThread *Threads_CloneTCB(Uint *Err, Uint Flags); +extern tThread *Threads_CloneTCB(Uint Flags); extern tThread *Threads_CloneThreadZero(void); #endif