Changeset 927a181e in mainline for uspace/lib/c/generic
- Timestamp:
- 2012-12-04T02:17:04Z (13 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- cb10bc9
- Parents:
- 21b703f
- Location:
- uspace/lib/c/generic
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/async.c
r21b703f r927a181e 166 166 167 167 /** Async framework global futex */ 168 atomic_t async_futex = FUTEX_INITIALIZER;168 futex_t async_futex = FUTEX_INITIALIZER; 169 169 170 170 /** Number of threads waiting for IPC in the kernel. */ -
uspace/lib/c/generic/fibril.c
r21b703f r927a181e 49 49 #include <assert.h> 50 50 #include <async.h> 51 #include <futex.h> 51 52 52 53 /** … … 54 55 * serialized_list and manager_list. 55 56 */ 56 static atomic_t fibril_futex = FUTEX_INITIALIZER;57 static futex_t fibril_futex = FUTEX_INITIALIZER; 57 58 58 59 static LIST_INITIALIZE(ready_list); -
uspace/lib/c/generic/futex.c
r21b703f r927a181e 46 46 void futex_initialize(futex_t *futex, int val) 47 47 { 48 atomic_set( futex, val);48 atomic_set(&futex->val, val); 49 49 } 50 50 … … 59 59 int futex_trydown(futex_t *futex) 60 60 { 61 return cas( futex, 1, 0);61 return cas(&futex->val, 1, 0); 62 62 } 63 63 … … 73 73 int futex_down(futex_t *futex) 74 74 { 75 if ((atomic_signed_t) atomic_predec( futex) < 0)76 return __SYSCALL1(SYS_FUTEX_SLEEP, (sysarg_t) &futex-> count);75 if ((atomic_signed_t) atomic_predec(&futex->val) < 0) 76 return __SYSCALL1(SYS_FUTEX_SLEEP, (sysarg_t) &futex->val.count); 77 77 78 78 return 0; … … 89 89 int futex_up(futex_t *futex) 90 90 { 91 if ((atomic_signed_t) atomic_postinc( futex) < 0)92 return __SYSCALL1(SYS_FUTEX_WAKEUP, (sysarg_t) &futex-> count);91 if ((atomic_signed_t) atomic_postinc(&futex->val) < 0) 92 return __SYSCALL1(SYS_FUTEX_WAKEUP, (sysarg_t) &futex->val.count); 93 93 94 94 return 0; -
uspace/lib/c/generic/ipc.c
r21b703f r927a181e 81 81 LIST_INITIALIZE(queued_calls); 82 82 83 static atomic_t ipc_futex = FUTEX_INITIALIZER;83 static futex_t ipc_futex = FUTEX_INITIALIZER; 84 84 85 85 /** Send asynchronous message via syscall.
Note:
See TracChangeset
for help on using the changeset viewer.
