Changeset 31e8ddd in mainline for generic/src/proc/task.c
- Timestamp:
- 2006-06-05T17:25:37Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 2569ec90
- Parents:
- 9c1c6771
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
generic/src/proc/task.c
r9c1c6771 r31e8ddd 141 141 void task_destroy(task_t *t) 142 142 { 143 spinlock_lock(&tasks_lock); 144 btree_remove(&tasks_btree, t->taskid, NULL); 145 spinlock_unlock(&tasks_lock); 146 147 task_destroy_arch(t); 148 btree_destroy(&t->futexes); 149 150 mutex_lock_active(&t->as->lock); 151 if (--t->as->refcount == 0) { 152 mutex_unlock(&t->as->lock); 153 as_destroy(t->as); 154 /* 155 * t->as is destroyed. 156 */ 157 } else { 158 mutex_unlock(&t->as->lock); 159 } 160 161 free(t); 162 TASK = NULL; 143 163 } 144 164 … … 259 279 ta->refcount++; 260 280 spinlock_unlock(&ta->lock); 281 282 spinlock_unlock(&tasks_lock); 261 283 262 284 t = thread_create(ktaskclnp, NULL, ta, 0, "ktaskclnp");
Note:
See TracChangeset
for help on using the changeset viewer.