diff options
author | Neal H. Walfield <neal@gnu.org> | 2008-06-22 09:16:45 +0000 |
---|---|---|
committer | Thomas Schwinge <tschwinge@gnu.org> | 2009-04-07 23:18:00 +0200 |
commit | 7a69a458fe11877a7b162191a6c583d7c6bd764f (patch) | |
tree | 40a25ad357efedefd8df01d2ced0bac71dab041c /pthread/pt-internal.h | |
parent | 9eb270404ceced4a2dc49d875c0b4e674e0b51d4 (diff) |
viengoos/
2008-06-22 Neal H. Walfield <neal@gnu.org>
* thread.h: Include "list.h".
(struct thread) [! NDEBUG]: Add field futex_waiter_node.
[! NDEBUG]: Instantiate the futex_waiter list class.
(futex_waiters) [! NDEBUG]: Declare.
* server.c (futex_waiters) [! NDEBUG]: New variable.
(server_loop) [! NDEBUG]: If we don't get an RPC for a while,
dequeue all thread's enqueued on FUTEX_WAITERS and return EDEADLK.
When blocking a thread on a futex, add THREAD to FUTEX_WAITERS.
* object.c (object_wait_queue_dequeue) [! NDEBUG]: If
THREAD->WAIT_REASON is THREAD_WAIT_FUTEX, unlink THREAD from
FUTEX_WAITERS.
hurd/
2008-06-22 Neal H. Walfield <neal@gnu.org>
* futex.h [! RM_INTERN]: Include <errno.h>.
(futex_wait): On error, set ERRNO and return -1.
(futex_timed_wait): Likewise.
(futex_wake): Likewise.
* mutex.h (ss_mutex_lock): If FUTEX_WAIT returns failure, print
some debugging information.
Diffstat (limited to 'pthread/pt-internal.h')
0 files changed, 0 insertions, 0 deletions