Rev 2804 | Rev 2817 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 2804 | Rev 2808 | ||
|---|---|---|---|
| Line 410... | Line 410... | ||
| 410 | */ |
410 | */ |
| 411 | ipl = interrupts_disable(); |
411 | ipl = interrupts_disable(); |
| 412 | spinlock_lock(&task->lock); |
412 | spinlock_lock(&task->lock); |
| 413 | atomic_inc(&task->refcount); |
413 | atomic_inc(&task->refcount); |
| 414 | atomic_inc(&task->lifecount); |
414 | atomic_inc(&task->lifecount); |
| - | 415 | ||
| - | 416 | /* FIXME: this must be done very carefully.. an unstoppable |
|
| - | 417 | thread cannot appear just-so, it must be possible to catch it. */ |
|
| - | 418 | if (t->flags & THREAD_FLAG_USPACE) |
|
| 415 | ++task->not_stoppable_count; |
419 | ++task->not_stoppable_count; |
| 416 | list_append(&t->th_link, &task->th_head); |
420 | list_append(&t->th_link, &task->th_head); |
| 417 | spinlock_unlock(&task->lock); |
421 | spinlock_unlock(&task->lock); |
| 418 | 422 | ||
| 419 | /* |
423 | /* |
| 420 | * Register this thread in the system-wide list. |
424 | * Register this thread in the system-wide list. |