Changeset 9ad289d in mainline for kernel/generic/src
- Timestamp:
- 2013-02-23T14:04:55Z (13 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 088b334
- Parents:
- 3acd1bb (diff), df64dbc (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)links above to see all the changes relative to each parent. - Location:
- kernel/generic/src
- Files:
-
- 2 edited
-
main/kinit.c (modified) (1 diff)
-
proc/task.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/src/main/kinit.c
r3acd1bb r9ad289d 250 250 CAP_IO_MANAGER | CAP_IRQ_REG); 251 251 252 if (!ipc_phone_0) 252 if (!ipc_phone_0) { 253 253 ipc_phone_0 = &programs[i].task->answerbox; 254 /* 255 * Hold the first task so that the 256 * ipc_phone_0 remains a valid pointer 257 * even if the first task exits for 258 * whatever reason. 259 */ 260 task_hold(programs[i].task); 261 } 254 262 } 255 263 -
kernel/generic/src/proc/task.c
r3acd1bb r9ad289d 125 125 { 126 126 size_t tasks_left; 127 128 if (ipc_phone_0) { 129 task_t *task_0 = ipc_phone_0->task; 130 ipc_phone_0 = NULL; 131 /* 132 * The first task is held by kinit(), we need to release it or 133 * it will never finish cleanup. 134 */ 135 task_release(task_0); 136 } 127 137 128 138 /* Repeat until there are any tasks except TASK */
Note:
See TracChangeset
for help on using the changeset viewer.
