Changes in kernel/generic/include/proc/thread.h [6eef3c4:9d58539] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/include/proc/thread.h
r6eef3c4 r9d58539 54 54 55 55 /* Thread flags */ 56 typedef enum { 57 THREAD_FLAG_NONE = 0, 58 /** Thread executes in user space. */ 59 THREAD_FLAG_USPACE = (1 << 0), 60 /** Thread will be attached by the caller. */ 61 THREAD_FLAG_NOATTACH = (1 << 1), 62 /** Thread accounting doesn't affect accumulated task accounting. */ 63 THREAD_FLAG_UNCOUNTED = (1 << 2) 64 } thread_flags_t; 56 57 /** Thread cannot be migrated to another CPU. 58 * 59 * When using this flag, the caller must set cpu in the thread_t 60 * structure manually before calling thread_ready (even on uniprocessor). 61 * 62 */ 63 #define THREAD_FLAG_WIRED (1 << 0) 64 65 /** Thread was migrated to another CPU and has not run yet. */ 66 #define THREAD_FLAG_STOLEN (1 << 1) 67 68 /** Thread executes in userspace. */ 69 #define THREAD_FLAG_USPACE (1 << 2) 70 71 /** Thread will be attached by the caller. */ 72 #define THREAD_FLAG_NOATTACH (1 << 3) 65 73 66 74 /** Thread structure. There is one per thread. */ … … 139 147 140 148 fpu_context_t *saved_fpu_context; 141 boolfpu_context_exists;149 int fpu_context_exists; 142 150 143 151 /* … … 146 154 * thread. This disables migration. 147 155 */ 148 boolfpu_context_engaged;156 int fpu_context_engaged; 149 157 150 158 /* The thread will not be migrated if nomigrate is non-zero. */ 151 unsignedint nomigrate;152 153 /** Thread state. */159 int nomigrate; 160 161 /** Thread's state. */ 154 162 state_t state; 155 156 /** Thread CPU. */ 163 /** Thread's flags. */ 164 unsigned int flags; 165 166 /** Thread's CPU. */ 157 167 cpu_t *cpu; 158 168 /** Containing task. */ 159 169 task_t *task; 160 /** Thread is wired to CPU. */161 bool wired;162 /** Thread was migrated to another CPU and has not run yet. */163 bool stolen;164 /** Thread is executed in user space. */165 bool uspace;166 170 167 171 /** Ticks before preemption. */ … … 212 216 extern void thread_init(void); 213 217 extern thread_t *thread_create(void (*)(void *), void *, task_t *, 214 thread_flags_t, const char *); 215 extern void thread_wire(thread_t *, cpu_t *); 218 unsigned int, const char *, bool); 216 219 extern void thread_attach(thread_t *, task_t *); 217 220 extern void thread_ready(thread_t *);
Note:
See TracChangeset
for help on using the changeset viewer.