/branches/tracing/kernel/generic/src/proc/task.c |
---|
176,7 → 176,10 |
ta->debug_begin_call = NULL; |
ta->debug_go_call = NULL; |
ta->not_stoppable_count = 0; |
ipc_answerbox_init(&ta->kernel_box, ta); |
ta->kb_thread = NULL; |
ipc_answerbox_init(&ta->answerbox, ta); |
for (i = 0; i < IPC_MAX_PHONES; i++) |
ipc_phone_init(&ta->phones[i]); |
/branches/tracing/kernel/generic/src/proc/thread.c |
---|
412,7 → 412,11 |
spinlock_lock(&task->lock); |
atomic_inc(&task->refcount); |
atomic_inc(&task->lifecount); |
++task->not_stoppable_count; |
/* FIXME: this must be done very carefully.. an unstoppable |
thread cannot appear just-so, it must be possible to catch it. */ |
if (t->flags & THREAD_FLAG_USPACE) |
++task->not_stoppable_count; |
list_append(&t->th_link, &task->th_head); |
spinlock_unlock(&task->lock); |