summaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog34
1 files changed, 34 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 89fc199..2365117 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,37 @@
+2008-08-16 Neal H. Walfield <neal@gnu.org>
+
+ * pthread/pt-alloc.c: Don't include <bits/atomic.h>.
+ (__pthread_free_threads): Change to a struct __pthread *.
+ (__pthread_free_threads_lock): New variable.
+ (__pthread_alloc): When looking for a TCB to reuse, iterate over
+ __pthread_free_threads taking the first for which the STATE field
+ is PTHREAD_TERMINATED. When reusing a TCB, first call
+ __pthread_thread_halt on it.
+ * pthread/pt-dealloc.c: Don't include <bits/atomic.h>.
+ (__pthread_free_threads): Change to a struct __pthread *.
+ (__pthread_free_threads_lock): New declaration.
+ (__pthread_dealloc): Enqueue PTHREAD on __PTHREAD_FREE_THREADS.
+ Set PTHREAD->STATE to PTHREAD_TERMINATED after everything else.
+ * pthread/pt-join.c (pthread_join): Call __pthread_thread_halt
+ before destroying the thread. When destroying the thread, call
+ __pthread_thread_dealloc on it.
+ * pthread/pt-detach.c (pthread_detach): If destroying the thread,
+ call __pthread_thread_halt before deallocating the stack. In this
+ case, also call __pthread_thread_dealloc on the tcb.
+ * pthread/pt-exit.c (pthread_exit): Call __pthread_dealloc only if
+ the thread is detached and then as the last thing we do before
+ calling __pthread_thread_halt.
+ * pthread/pt-internal.h (__pthread_thread_halt): Remove argument
+ NEED_DEALLOC. Update users.
+ * sysdeps/mach/pt-thread-halt.c (__pthread_thread_halt): Remove
+ argument need_dealloc.
+ * sysdeps/mach/hurd/pt-sysdep.h (PTHREAD_SYSDEP_MEMBERS): Add field
+ have_kernel_resources.
+ * sysdeps/mach/hurd/pt-thread-alloc.c (__pthread_thread_alloc): If
+ THREAD->HAVE_KERNEL_RESOURCES is true, just return. After
+ allocating the resources, set THREAD->HAVE_KERNEL_RESOURCES to
+ true.
+
2008-08-12 Neal H. Walfield <neal@gnu.org>
Merge changes from hurd-l4 fork.