Changeset 9179d0a in mainline for generic/src/synch
- Timestamp:
- 2006-04-27T17:13:49Z (20 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 040e4e9
- Parents:
- eaa202a
- Location:
- generic/src/synch
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
generic/src/synch/condvar.c
reaa202a r9179d0a 77 77 * 78 78 * For exact description of possible combinations of 79 * @usec and @trywait, see comment for waitq_sleep_timeout().79 * usec and trywait, see comment for waitq_sleep_timeout(). 80 80 * 81 81 * @return See comment for waitq_sleep_timeout(). -
generic/src/synch/futex.c
reaa202a r9179d0a 94 94 * @param uaddr Userspace address of the futex counter. 95 95 * @param usec If non-zero, number of microseconds this thread is willing to sleep. 96 * @param trydown If @usec is zero and trydown is non-zero, conditional operation will be attempted.96 * @param trydown If usec is zero and trydown is non-zero, conditional operation will be attempted. 97 97 * 98 98 * @return One of ESYNCH_TIMEOUT, ESYNCH_OK_ATOMIC and ESYNCH_OK_BLOCKED. See synch.h. … … 219 219 /** Compute hash index into futex hash table. 220 220 * 221 * @param key Address where the @key (i.e. physical address of futex counter) is stored.221 * @param key Address where the key (i.e. physical address of futex counter) is stored. 222 222 * 223 223 * @return Index into futex hash table. … … 232 232 * @param key Address where the key (i.e. physical address of futex counter) is stored. 233 233 * 234 * @return True if the item matches the @key. False otherwise.234 * @return True if the item matches the key. False otherwise. 235 235 */ 236 236 bool futex_ht_compare(__native *key, count_t keys, link_t *item) -
generic/src/synch/mutex.c
reaa202a r9179d0a 52 52 * 53 53 * For exact description of possible combinations of 54 * @usec and @trylock, see comment for waitq_sleep_timeout().54 * usec and trylock, see comment for waitq_sleep_timeout(). 55 55 * 56 56 * @return See comment for waitq_sleep_timeout(). -
generic/src/synch/rwlock.c
reaa202a r9179d0a 27 27 */ 28 28 29 /** Reader/Writer locks 29 /** 30 * @file rwlock.c 31 * @brief Reader/Writer locks. 30 32 * 31 33 * A reader/writer lock can be held by multiple readers at a time. 32 34 * Or it can be exclusively held by a sole writer at a time. 33 */ 34 35 /* 35 * 36 36 * These locks are not recursive. 37 * Neither readers nor writers will suffer starvation. 37 * Because technique called direct hand-off is used, neither readers 38 * nor writers will suffer starvation. 38 39 * 39 40 * If there is a writer followed by a reader waiting for the rwlock … … 146 147 * 147 148 * For exact description of possible combinations of 148 * @usec and @trylock, see comment for waitq_sleep_timeout().149 * usec and trylock, see comment for waitq_sleep_timeout(). 149 150 * 150 151 * @return See comment for waitq_sleep_timeout(). -
generic/src/synch/semaphore.c
reaa202a r9179d0a 66 66 * 67 67 * For exact description of possible combinations of 68 * @usec and @trydown, see comment for waitq_sleep_timeout().68 * usec and trydown, see comment for waitq_sleep_timeout(). 69 69 * 70 70 * @return See comment for waitq_sleep_timeout(). -
generic/src/synch/waitq.c
reaa202a r9179d0a 25 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 */ 28 29 /** 30 * @file waitq.c 31 * @brief Wait queue. 32 * 33 * Wait queue is the basic synchronization primitive upon all 34 * other synchronization primitives build. 35 * 36 * It allows threads to wait for an event in first-come, first-served 37 * fashion. Conditional operation as well as timeouts and interruptions 38 * are supported. 27 39 */ 28 40 … … 161 173 * @param nonblocking Blocking vs. non-blocking operation mode switch. 162 174 * 163 * If @usec is greater than zero, regardless of the value of @nonblocking,175 * If usec is greater than zero, regardless of the value of nonblocking, 164 176 * the call will not return until either timeout or wakeup comes. 165 177 * 166 * If @usec is zero and @nonblocking is zero (false), the call178 * If usec is zero and @nonblocking is zero (false), the call 167 179 * will not return until wakeup comes. 168 180 * 169 * If @usec is zero and @nonblocking is non-zero (true), the call will181 * If usec is zero and nonblocking is non-zero (true), the call will 170 182 * immediately return, reporting either success or failure. 171 183 * 172 * @return Returns one of: ESYNCH_WOULD_BLOCK, ESYNCH_TIMEOUT,173 * ESYNCH_OK_ATOMIC, ESYNCH_OK_BLOCKED.174 * 175 * ESYNCH_WOULD_BLOCK means that the sleep failed because at the time184 * @return Returns one of: ESYNCH_WOULD_BLOCK, ESYNCH_TIMEOUT, 185 * ESYNCH_OK_ATOMIC, ESYNCH_OK_BLOCKED. 186 * 187 * @li ESYNCH_WOULD_BLOCK means that the sleep failed because at the time 176 188 * of the call there was no pending wakeup. 177 189 * 178 * ESYNCH_TIMEOUT means that the sleep timed out.179 * 180 * ESYNCH_INTERRUPTED means that somebody interrupted the sleeping thread.181 * 182 * ESYNCH_OK_ATOMIC means that the sleep succeeded and that there was190 * @li ESYNCH_TIMEOUT means that the sleep timed out. 191 * 192 * @li ESYNCH_INTERRUPTED means that somebody interrupted the sleeping thread. 193 * 194 * @li ESYNCH_OK_ATOMIC means that the sleep succeeded and that there was 183 195 * a pending wakeup at the time of the call. The caller was not put 184 196 * asleep at all. 185 197 * 186 * ESYNCH_OK_BLOCKED means that the sleep succeeded; the full sleep was198 * @li ESYNCH_OK_BLOCKED means that the sleep succeeded; the full sleep was 187 199 * attempted. 188 200 */
Note:
See TracChangeset
for help on using the changeset viewer.
