Changeset 9ad289d in mainline
- Timestamp:
- 2013-02-23T14:04:55Z (12 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. - Files:
-
- 1 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/amd64/include/istate.h
r3acd1bb r9ad289d 66 66 } istate_t; 67 67 68 #define RPL_USER 3 69 68 70 /** Return true if exception happened while in userspace */ 69 71 NO_TRACE static inline int istate_from_uspace(istate_t *istate) 70 72 { 71 return !(istate->rip & UINT64_C(0x8000000000000000));73 return (istate->cs & RPL_USER) == RPL_USER; 72 74 } 73 75 -
kernel/arch/ia32/include/istate.h
r3acd1bb r9ad289d 68 68 } istate_t; 69 69 70 #define RPL_USER 3 71 70 72 /** Return true if exception happened while in userspace */ 71 73 NO_TRACE static inline int istate_from_uspace(istate_t *istate) 72 74 { 73 return !(istate->eip & UINT32_C(0x80000000));75 return (istate->cs & RPL_USER) == RPL_USER; 74 76 } 75 77 -
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.