Changeset cdbcf14 in mainline for uspace/lib/c/generic/ipc.c
- Timestamp:
- 2012-12-04T17:36:30Z (12 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 52d2603
- Parents:
- 6c1bb0d
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/ipc.c
r6c1bb0d rcdbcf14 136 136 if (!call) { 137 137 /* Nothing to do regardless if failed or not */ 138 futex_u p(&ipc_futex);138 futex_unlock(&ipc_futex); 139 139 return; 140 140 } 141 141 142 142 if (callid == (ipc_callid_t) IPC_CALLRET_FATAL) { 143 futex_u p(&ipc_futex);143 futex_unlock(&ipc_futex); 144 144 145 145 /* Call asynchronous handler with error code */ … … 152 152 153 153 if (callid == (ipc_callid_t) IPC_CALLRET_TEMPORARY) { 154 futex_u p(&ipc_futex);154 futex_unlock(&ipc_futex); 155 155 156 156 call->u.msg.phoneid = phoneid; … … 175 175 /* Add call to the list of dispatched calls */ 176 176 list_append(&call->list, &dispatched_calls); 177 futex_u p(&ipc_futex);177 futex_unlock(&ipc_futex); 178 178 } 179 179 … … 219 219 */ 220 220 221 futex_ down(&ipc_futex);221 futex_lock(&ipc_futex); 222 222 ipc_callid_t callid = __SYSCALL6(SYS_IPC_CALL_ASYNC_FAST, phoneid, 223 223 imethod, arg1, arg2, arg3, arg4); … … 289 289 */ 290 290 291 futex_ down(&ipc_futex);291 futex_lock(&ipc_futex); 292 292 ipc_callid_t callid = 293 293 ipc_call_async_internal(phoneid, &call->u.msg.data); … … 384 384 call->u.callid = callid; 385 385 386 futex_ down(&ipc_futex);386 futex_lock(&ipc_futex); 387 387 list_append(&call->list, &dispatched_calls); 388 futex_u p(&ipc_futex);388 futex_unlock(&ipc_futex); 389 389 } 390 390 … … 412 412 callid &= ~IPC_CALLID_ANSWERED; 413 413 414 futex_ down(&ipc_futex);414 futex_lock(&ipc_futex); 415 415 416 416 link_t *item; … … 423 423 list_remove(&call->list); 424 424 425 futex_u p(&ipc_futex);425 futex_unlock(&ipc_futex); 426 426 427 427 if (call->callback) … … 434 434 } 435 435 436 futex_u p(&ipc_futex);436 futex_unlock(&ipc_futex); 437 437 } 438 438
Note:
See TracChangeset
for help on using the changeset viewer.