summaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog609
1 files changed, 121 insertions, 488 deletions
diff --git a/ChangeLog b/ChangeLog
index f9c09c1..89fc199 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,11 +1,13 @@
2008-08-12 Neal H. Walfield <neal@gnu.org>
- * sysdeps/generic/bits/pthread-np.h: New file.
+ Merge changes from hurd-l4 fork.
-2006-03-04 Samuel Thibault <samuel.thibault@ens-lyon.org>
+ * Makefile (SRCS): Add pt-startup.c and pt-mutex-transfer-np.c.
+ (sysdeps_headers): Add pthread-np.h.
- * sysdeps/ia32/machine-sp.h (thread_stack_pointer):
- Optimize esp read.
+2008-08-12 Neal H. Walfield <neal@gnu.org>
+
+ * sysdeps/generic/bits/pthread-np.h: New file.
2008-08-12 Neal H. Walfield <neal@gnu.org>
@@ -22,17 +24,69 @@
2008-08-12 Neal H. Walfield <neal@gnu.org>
- Merge in Samuel Thibault's changes from the main line.
-
- * Makefile.am (libpthread_a_SOURCES): Add pt-getattr.c.
- * headers.m4: Link libpthread/include/pthread/pthreadtypes.h to
- sysroot/include/pthread/pthreadtypes.h and
- libpthread/sysdeps/${arch}/bits/spin-lock-inline.h. to
- sysroot/include/bits/spin-lock-inline.h.
-
* include/pthread/pthread.h: Include <sys/cdefs.h>.
(__extern_inline): If not defined, define appropriately.
+2008-06-01 Neal H. Walfield <neal@gnu.org>
+
+ * include/pthread/pthread.h (PTHREAD_MUTEX_RECURSIVE_INITIALIZER_NP):
+ New definition.
+ * sysdeps/generic/bits/mutex.h
+ (__PTHREAD_MUTEX_RECURSIVE_INITIALIZER): New definition.
+ * sysdeps/generic/bits/mutex-attr.h (__pthread_recursive_mutexattr):
+ New definition.
+ * sysdeps/generic/pt-mutexattr.c (__pthread_recursive_mutexattr):
+ New declaration.
+ * sysdeps/generic/pt-mutex-init.c (_pthread_mutex_init): If ATTR
+ is &__PTHREAD_RECURSIVE_MUTEXATTR, don't allocate a copy, just
+ save in MUTEX->ATTR.
+ * sysdeps/generic/pt-mutex-destroy.c (_pthread_mutex_destroy): If
+ MUTEX->ATTR is &__PTHREAD_RECURSIVE_MUTEXATTR, don't free it.
+
+2008-05-29 Thomas Schwinge <tschwinge@gnu.org>
+
+ * sysdeps/generic/sem-timedwait.c: Don't include <error.h>.
+
+2008-05-21 Neal H. Walfield <neal@gnu.org>
+
+ * include/pthread/pthread.h: Include <bits/pthread-np.h>.
+
+2008-03-01 Neal H. Walfield <neal@gnu.org>
+
+ * sysdeps/generic/pt-mutex-transfer-np.c: New file.
+
+ * pthread/pt-self.c (pthread_self): Assert that SELF is not NULL.
+
+2007-12-23 Neal H. Walfield <neal@gnu.org>
+
+ * pthread/pt-join.c (pthread_join): Cast argument to
+ pthread_cleanup_push to avoid warning.
+
+2007-11-23 Neal H. Walfield <neal@gnu.org>
+
+ * pthread/pt-internal.h (__pthread_startup): Add declaration.
+ * pthread/pt-create.c (entry_point): Call __pthread_startup.
+
+2008-08-12 Neal H. Walfield <neal@gnu.org>
+
+ * sysdeps/generic/pt-mutex-unlock.c (__pthread_mutex_unlock):
+ Remove dead code.
+
+2008-08-11 Neal H. Walfield <neal@gnu.org>
+
+ * sysdeps/l4/pt-docancel.c: Remove file.
+ * sysdeps/l4/pt-thread-alloc.c: Likewise.
+ * sysdeps/l4/pt-wakeup.c: Likewise.
+ * sysdeps/l4/pt-thread-halt.c: Likewise.
+ * sysdeps/l4/pt-start.c: Likewise.
+ * sysdeps/l4/pt-stack-alloc.c: Likewise.
+ * sysdeps/l4/pt-thread-start.c: Likewise.
+ * sysdeps/l4/pt-block.c: Likewise.
+ * sysdeps/l4/hurd/pt-sysdep.h: Likewise.
+ * sysdeps/l4/hurd/pt-sysdep.c: Likewise.
+ * sysdeps/l4/hurd/i386/pt-setup.c: Likewise.
+ * sysdeps/l4/hurd/i386/pt-machdep.c: Likewise.
+
2008-08-04 Samuel Thibault <samuel.thibault@ens-lyon.org>
* include/pthread/pthreadtypes.h (__pthread_inheritsched): Remove
@@ -41,26 +95,35 @@
2008-08-03 Samuel Thibault <samuel.thibault@ens-lyon.org>
* Makefile (sysdeps_headers): Add spin-lock-inline.h.
- (SYSDEP_PATH): Move sysdeps/ia32 right after
- sysdeps/$(MICROKERNEL)/ia32.
+ (SYSDEP_PATH): Move sysdeps/i386 right after
+ sysdeps/$(MICROKERNEL)/i386.
* include/pthread/pthread.h: Include <bits/spin-lock-inline.h>.
- * sysdeps/ia32/bits/spin-lock.h: Move inlines to...
- * sysdeps/ia32/bits/spin-lock-inline.h: ... new file.
+ * sysdeps/i386/bits/spin-lock.h: Move inlines to...
+ * sysdeps/i386/bits/spin-lock-inline.h: ... new file.
+ * sysdeps/mach/bits/spin-lock.h: Move inlines to...
+ * sysdeps/mach/bits/spin-lock-inline.h: ... new file.
2008-08-02 Samuel Thibault <samuel.thibault@ens-lyon.org>
* sysdeps/generic/bits/mutex.h: Do not include <errno.h> and
<stddef.h>
- * sysdeps/ia32/bits/memory.h (__memory_barrier): Add memory clobber.
- * sysdeps/ia32/bits/spin-lock.h (__pthread_spin_trylock,
+ * sysdeps/i386/bits/memory.h (__memory_barrier): Add memory clobber.
+ * sysdeps/i386/bits/spin-lock.h (__pthread_spin_trylock,
__pthread_spin_unlock): Add memory clobbers.
- * sysdeps/l4/hurd/ia32/pt-setup.c (stack_setup): Fix reservation of
+ * sysdeps/mach/hurd/i386/pt-setup.c (stack_setup): Fix cast from
+ thread to integer. Fix reservation of stack room for initial frame.
+ * sysdeps/l4/hurd/i386/pt-setup.c (stack_setup): Fix reservation of
stack room for initial frame.
2008-07-18 Samuel Thibault <samuel.thibault@ens-lyon.org>
* Makefile (sysdeps_headers): add pthread/pthreadtypes.h
+2008-06-29 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * sysdeps/generic/pt-mutex-unlock.c (__pthread_mutex_unlock):
+ Do not use assertx and threadid.
+
2008-06-27 Samuel Thibault <samuel.thibault@ens-lyon.org>
* include/pthread/pthread.h: Do not define __need_clockid_t, include
@@ -100,39 +163,16 @@
* sysdeps/generic/bits/thread-barrier.h: Remove unused file.
-2008-05-17 Samuel Thibault <samuel.thibault@ens-lyon.org>
-
- * include/pthread/pthread.h (pthread_getattr_np): New declaration.
- * pthread/pt-getattr.c: New file.
- * Makefile (SRCS): Add pt-getattr.c.
-
-2008-03-16 Samuel Thibault <samuel.thibault@ens-lyon.org>
-
- * include/libc-symbols.h (HAVE_ASM_PREVIOUS_DIRECTIVE): Define.
-
-2008-02-29 Samuel Thibault <samuel.thibault@ens-lyon.org>
-
- * sysdeps/l4/hurd/ia32/pt-setup.c (stack_setup): Align stack on 0x10
- for MMX operations.
-
-2008-01-01 Samuel Thibault <samuel.thibault@ens-lyon.org>
-
- * include/pthread/pthread.h (pthread_spin_destroy, pthread_spin_init,
- pthread_spin_lock, pthread_spin_trylock, pthread_spin_unlock): Use
- __extern_inline macro instead of extern __inline.
- * sysdeps/ia32/bits/spin-lock.h (__PT_SPIN_INLINE,
- __pthread_spin_lock): Likewise
- * sysdeps/generic/bits/pthread.h (pthread_equal): Declare ; only
- provide inline when __USE_EXTERN_INLINES is defined. Use __extern_inline
- macro instead of extern __inline.
- * sysdeps/ia32/bits/memory.h (__memory_barrier): Add static to inline.
-
2008-06-22 Neal H. Walfield <neal@gnu.org>
* sysdeps/generic/pt-mutex-timedlock.c
- (__pthread_mutex_timedlock_internal): Don't set MUTEX->OWNER here.
- * sysdeps/generic/pt-mutex-unlock.c (__pthread_mutex_unlock): Set
- it here to WAKEUP.
+ (__pthread_mutex_timedlock_internal) [! NDEBUG]: Set MUTEX->OWNER
+ appropriately and assert that it is consistent.
+ * sysdeps/generic/pt-mutex-unlock.c (__pthread_mutex_unlock) [!
+ NDEBUG]: Set MUTEX->OWNER appropriately and assert that it is
+ consistent.
+ * sysdeps/generic/pt-mutex-trylock.c (__pthread_mutex_trylock) [!
+ NDEBUG]: Set MUTEX->OWNER.
2008-06-07 Neal H. Walfield <neal@gnu.org>
@@ -140,365 +180,47 @@
true.
(__pthread_dequeuing_iterate): Likewise.
-2008-06-05 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/hurd/pt-thread-alloc.c (__pthread_thread_alloc):
- Replace use of as_slot_ensure with as_ensure.
-
-2008-06-01 Neal H. Walfield <neal@gnu.org>
-
- * include/pthread/pthread.h (PTHREAD_MUTEX_RECURSIVE_INITIALIZER_NP):
- New definition.
- * sysdeps/generic/bits/mutex.h
- (__PTHREAD_MUTEX_RECURSIVE_INITIALIZER): New definition.
- * sysdeps/generic/bits/mutex-attr.h (__pthread_recursive_mutexattr):
- New definition.
- * sysdeps/generic/pt-mutexattr.c (__pthread_recursive_mutexattr):
- New declaration.
- * sysdeps/generic/pt-mutex-init.c (_pthread_mutex_init): If ATTR
- is &__PTHREAD_RECURSIVE_MUTEXATTR, don't allocate a copy, just
- save in MUTEX->ATTR.
- * sysdeps/generic/pt-mutex-destroy.c (_pthread_mutex_destroy): If
- MUTEX->ATTR is &__PTHREAD_RECURSIVE_MUTEXATTR, don't free it.
-
-2008-05-29 Thomas Schwinge <tschwinge@gnu.org>
-
- * headers.m4: Link files into `sysroot/include/' instead of `include/'.
- Create symbolic link to package's library in `sysroot/lib/'.
- * Makefile.am [ENABLE_TESTS]: Don't build package's library.
-
- * sysdeps/generic/sem-timedwait.c: Don't include <error.h>.
-
-2008-05-29 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/hurd/pt-sysdep.h Include <hurd/exceptions.h>.
- (EXCEPTION_AREA_SIZE): Define.
- (EXCEPTION_AREA_SIZE_LOG2): Likewise.
- (EXCEPTION_PAGE): Likewise.
- (PTHREAD_SYSDEP_MEMBERS): Change object's type to an addr_t.
- Update users. Remove field exception_page, replace with
- exception_area. Add field exception_area_va.
- * sysdeps/l4/hurd/pt-thread-alloc.c: Include <hurd/as.h> and
- <hurd/addr.h>.
- (__pthread_thread_alloc): Allocate EXCEPTION_AREA_SIZE bytes of
- address space. Save it in THREAD->EXCEPTION_AREA_VA. Allocate a
- page for each page in that area. Save them in
- THREAD->EXCEPTION_AREA.
- * sysdeps/l4/hurd/ia32/pt-setup.c (__pthread_setup): Set
- EXCEPTION_PAGE->EXCEPTION_HANDLER_SP to the end of
- EXCEPTION_PAGE->EXCEPTION_HANDLER_SP minus one word, in which we
- save the address of the exception page.
- * sysdeps/l4/hurd/pt-thread-start.c (__pthread_thread_start): Set
- IN.EXCEPTION_PAGE to the first page in THREAD->EXCEPTION_AREA_VA.
- * sysdeps/l4/hurd/pt-thread-halt.c: Include <hurd/mutex.h>,
- <hurd/as.h> and <hurd/addr.h>.
- (saved_object_lock): New variable.
- (__pthread_thread_halt): Lock SAVED_OBJECT_LOCK when accessing
- SAVED_OBJECT. Free the address space used by the exception
- area (THREAD->EXCEPTION_AREA_VA) and its associated
- storage (THREAD->EXCEPTION_AREA).
-
2008-05-27 Neal H. Walfield <neal@gnu.org>
* pthread/pt-internal.h (__pthread_queue_iterate): Before
returning the current element, save its next pointer.
(__pthread_dequeuing_iterate): Likewise.
- * sysdeps/l4/hurd/pt-wakeup.c (__pthread_wakeup): Loop until we
- successfully wake THREAD.
-
-2008-05-21 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/hurd/bits/pthread-np.h: New file.
- * headers.m4: Don't link include/bits/pthread-np.h to
- libpthread/sysdeps/l4/bits/pthread-np.h but to
- libpthread/sysdeps/l4/hurd/bits/pthread-np.h.
- * include/pthread/pthread.h: Include <bits/pthread-np.h>.
- * sysdeps/l4/hurd/pt-setactivity-np.c (pthread_setactivity_np):
- New file.
- * Makefile.am (libpthread_a_SOURCES): Add pt-setactivity-np.c.
-
-2008-04-06 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/hurd/pt-kill.c: Just include "../generic/pt-kill.c".
-
-2008-03-01 Neal H. Walfield <neal@gnu.org>
-
- Add signal implementation.
- * Makefile.am (SYSDEP_PATH): Add $(srcdir)/signal.
- (libpthread_a_SOURCES): Add pt-mutex-transfer-np.c, kill.c,
- killpg.c, pt-kill-siginfo-np.c, raise.c, sigaction.c, sigaddset.c,
- sigaltstack.c, sigdelset.c, sigemptyset.c, sigfillset.c,
- sig-internal.c, sig-internal.h, siginterrupt.c, sigismember.c,
- signal.c, signal-dispatch.c, signal.h, sigpending.c,
- sigprocmask.c, sigsuspend.c, sigtimedwait.c, sigwait.c,
- sigwaiter.c, sigwaitinfo.c, signal-dispatch-lowlevel.c, and
- sigprocmask.c.
- * headers.m4: Link libpthread/signal/signal.h into ../include.
- * sysdeps/generic/pt-mutex-transfer-np.c: New file.
- * signal/README: New file.
- * signal/TODO: Likewise.
- * signal/kill.c: Likewise.
- * signal/pt-kill-siginfo-np.c: Likewise.
- * signal/sig-internal.c: Likewise.
- * signal/sig-internal.h: Likewise.
- * signal/sigaction.c: Likewise.
- * signal/sigaltstack.c: Likewise.
- * signal/signal-dispatch.c: Likewise.
- * signal/signal.h: Likewise.
- * signal/sigpending.c: Likewise.
- * signal/sigsuspend.c: Likewise.
- * signal/sigtimedwait.c: Likewise.
- * signal/sigwaiter.c: Likewise.
- * signal/sigwaitinfo.c: Likewise.
- * sysdeps/l4/hurd/sig-sysdep.h: Likewise.
- * sysdeps/l4/hurd/sigprocmask.c: Likewise.
- * sysdeps/generic/killpg.c: Likewise.
- * sysdeps/generic/pt-kill.c: Likewise.
- * sysdeps/generic/raise.c: Likewise.
- * sysdeps/generic/sigaddset.c: Likewise.
- * sysdeps/generic/sigdelset.c: Likewise.
- * sysdeps/generic/sigemptyset.c: Likewise.
- * sysdeps/generic/sigfillset.c: Likewise.
- * sysdeps/generic/siginterrupt.c: Likewise.
- * sysdeps/generic/sigismember.c: Likewise.
- * sysdeps/generic/signal.c: Likewise.
- * sysdeps/generic/sigwait.c: Likewise.
- * sysdeps/l4/hurd/ia32/signal-dispatch-lowlevel.c: Likewise.
- * sysdeps/l4/hurd/pt-sysdep.c (sigprocmask): Remove function.
- * sysdeps/l4/hurd/pt-sigstate.c (__pthread_sigstate): Implement
- it.
- * sysdeps/l4/hurd/pt-sigstate-init.c: Include <sig-internal.h>.
- (__pthread_sigstate_init): Initialize THREAD->SS.
- * sysdeps/l4/hurd/pt-kill.c: Remove file.
- * pthread/pt-internal.h: Include <sig-internal.h>.
- (PTHREAD_SIGNAL_MEMBERS) [! PTHREAD_SIGNAL_MEMBERS]: Define.
- (struct __pthread): Add PTHREAD_SIGNAL_MEMBERS.
- * pthread/pt-self.c (pthread_self): Assert that SELF is not NULL.
-
-2008-02-21 Neal H. Walfield <neal@gnu.org>
-
- * Makefile.am (AM_CPPFLAGS): Replace use of includes with
- $(USER_CPPFLAGS).
- (AM_CFLAGS): New variable.
-
-2008-02-16 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/hurd/ia32/pt-setup.c (stack_setup): Add correct casts
- to elide gcc warnings.
- (__pthread_setup): Likewise.
-
-2008-02-13 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/hurd/pt-thread-alloc.c (__pthread_thread_alloc):
- Update use of storage_alloc to be consistent with new API.
-
-2008-02-13 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/hurd/pt-sysdep.c (_pthread_init_routine): Change
- function signature to take a function pointer and an argument and
- to not return.
- (init_routine): Likewise. Pass entry and argument to
- __pthread_create_internal. Instead of returning, jump to the
- program counter and switch stacks.
-
-2008-02-11 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/hurd/ia32/pt-setup.c (_pthread_entry_point): New
- assembly function.
- (stack_setup): Take additional argument entry_point. Push it on
- the stack.
- (__pthread_setup): Set thread->mcontext.pc to
- &_pthread_entry_point. Pass ENTRY_POINT to stack_setup.
-
-2008-02-08 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/hurd/pt-setspecific.c (pthread_setspecific): Update use
- of hurd_ihash_create to be consistent with API changes.
-
-2008-01-23 Neal H. Walfield <neal@gnu.org>
-
- * Makefile.am (AM_CPPFLAGS): Add -I$(LIBC)/include.
-
-2008-01-17 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/hurd/pt-block.c: New file.
- * sysdeps/l4/hurd/pt-wakeup.c: Likewise.
-
-2008-01-01 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/generic/pt-mutex-timedlock.c
- (__pthread_mutex_timedlock_internal): Add additional asserts.
- [! NDEBUG]: Keep MUTEX->OWNER up to date.
- * sysdeps/generic/pt-mutex-trylock.c (__pthread_mutex_trylock):
- Add additional asserts.
- [! NDEBUG]: Keep MUTEX->OWNER up to date.
- * sysdeps/generic/pt-mutex-unlock.c (__pthread_mutex_unlock): Add
- additional asserts.
- [! NDEBUG]: Keep MUTEX->OWNER up to date.
-
-2007-12-23 Neal H. Walfield <neal@gnu.org>
-
- * Makefile.am (AM_CPPFLAGS): Add "-std=gnu99 -Wall -g -O3".
-
- * sysdeps/l4/pt-block.c (__pthread_block): Remove unused variable
- err.
-
- * pthread/pt-join.c (pthread_join): Cast argument to
- pthread_cleanup_push to avoid warning.
-
-2007-12-13 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/hurd/pt-thread-halt.c: Include <hurd/exceptions.h>.
- (__pthread_thread_halt): Call exception_page_cleanup.
-
-2007-12-12 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/pt-block.c (__pthread_block): Clear the acceptor.
- Improve debugging output.
- * sysdeps/l4/pt-wakeup.c (__pthread_wakeup): Load an empty message.
- Improve debugging output.
-
-2007-12-04 Neal H. Walfield <neal@gnu.org>
-
- Remove exception threads. Replace with support for activations.
- * sysdeps/l4/hurd/pt-sysdep.h (PTHREAD_SYSDEP_MEMBERS): Remove
- fields exception_handler_stack and exception_handler_sp. Add
- field exception_page.
- * sysdeps/l4/hurd/pt-thread-alloc.c (__pthread_thread_alloc):
- Allocate a page for THREAD->EXCEPTION_PAGE, not
- THREAD->EXCEPTION_HANDLER_STACK.
- * sysdeps/l4/hurd/ia32/pt-setup.c: Include <hurd/thread.h> and
- <hurd/exceptions.h>.
- (__pthread_setup): Remove code dealing with the exception thread.
- Set up the exception page.
- * sysdeps/l4/hurd/pt-thread-start.c (__pthread_thread_start):
- Remove code dealing with the exception thread. Update to use new
- rm_thread_exregs interface. Also set the thread's exception page.
- * sysdeps/l4/hurd/pt-thread-halt.c (__pthread_thread_halt): Remove
- code to dealing with the exception thread. Free the
- THREAD->EXCEPTION_PAGE.
-
-2007-11-23 Neal H. Walfield <neal@gnu.org>
-
- * pthread/pt-internal.h (__pthread_startup): Add declaration.
- * pthread/pt-create.c (entry_point): Call __pthread_startup.
- * sysdeps/l4/hurd/pt-sysdep.h: Include <hurd/storage.h> and
- <sys/mman.h>.
- (PTHREAD_SYSDEP_MEMBERS): Add fields object,
- exception_handler_stack and exception_handler_sp.
- (__attribute__): Call munmap.
- * sysdeps/l4/hurd/ia32/pt-setup.c (__pthread_setup): Set up
- thread->exception_handler_sp. Don't set the user define handle
- here.
- * sysdeps/l4/hurd/pt-startup.c: New file. Do it here.
- * sysdeps/l4/hurd/pt-thread-alloc.c: New file.
- * sysdeps/l4/hurd/pt-thread-halt.c: New file.
- * sysdeps/l4/hurd/pt-thread-start.c: New file.
- * Makefile.am (libpthread_a_SOURCES): Add pt-startup.c.
-
- * sysdeps/l4/pt-block.c: Include <hurd/stddef.h>.
- (__pthread_block): Detect IPC failure. Add debugging output.
- * sysdeps/l4/pt-wakeup.c: Include <hurd/stddef.h>.
- (__pthread_wakeup): Detect IPC failure. Add debugging output.
-
-2007-11-20 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/pt-thread-dealloc.c: New file.
- * Makefile.am (libpthread_a_SOURCES): Add pt-thread-dealloc.c.
-
- * sysdeps/l4/hurd/pt-sysdep.h (PTHREAD_STACK_DEFAULT): Change to
- 2MB.
+2008-05-27 Neal H. Walfield <neal@gnu.org>
- * sysdeps/l4/hurd/pt-sysdep.c (sched_yield): New function.
- (sigprocmask): Likewise.
- (init_routine): Only call __pthread_initialize once. Update
- comments.
+ * sysdeps/mach/hurd/pt-docancel.c (__pthread_do_cancel): Fix
+ assert.
-2007-11-20 Neal H. Walfield <neal@gnu.org>
-
- * Makefile.am (libpthread_a_SOURCES): Remove pt-create-np.c.
- * sysdeps/l4/pt-create-np.c: Remove file.
- * sysdeps/l4/pt-pool-np.c (pthread_pool_add_np): Change tid from
- an _L4_thread_id_t to an l4_thread_id_t.
- (pthread_pool_get_np): Return an l4_thread_id_t, not a
- _L4_thread_id_t.
- * sysdeps/l4/bits/pthread-np.h (pthread_create_from_l4_tid_np):
- Remove declaration.
- (pthread_pool_add_np): Change tid from an _L4_thread_id_t to an
- l4_thread_id_t.
- (pthread_pool_get_np): Return an l4_thread_id_t, not a
- _L4_thread_id_t.
-
- * sysdeps/l4/pt-docancel.c (__pthread_do_cancel): Implement for
- the case that the target thread is not the executing thread.
-
- * sysdeps/l4/pt-thread-alloc.c (__pthread_thread_alloc): Return
- EAGAIN if pthread_pool_get_np does not return a thread. Update
- comments.
+2008-05-17 Samuel Thibault <samuel.thibault@ens-lyon.org>
- * sysdeps/l4/pt-thread-start.c (__pthread_thread_start): Don't set
- the thread's pager. Assert that if this is the first thread, then
- THREAD->THREADID is designates the running thread.
+ * include/pthread/pthread.h (pthread_getattr_np): New declaration.
+ * pthread/pt-getattr.c: New file.
+ * Makefile (SRCS): Add pt-getattr.c.
- * sysdeps/l4/pt-timedblock.c (__pthread_timedblock): Add warning
- about incomplete implementation.
+2008-03-16 Samuel Thibault <samuel.thibault@ens-lyon.org>
- * Makefile.am (libpthread_a_SOURCES): Remove pt-thread-init.c.
- * sysdeps/l4/pt-thread-init.c: Remove dead file.
- * sysdeps/l4/pt-start.c: Remove dead file.
+ * include/libc-symbols.h (HAVE_ASM_PREVIOUS_DIRECTIVE): Define.
-2007-11-20 Neal H. Walfield <neal@gnu.org>
+2008-02-29 Samuel Thibault <samuel.thibault@ens-lyon.org>
- Also merge semaphore changes from mainline Hurd.
+ * sysdeps/l4/hurd/i386/pt-setup.c (stack_setup): Align stack on 0x10
+ for MMX operations.
+ * sysdeps/mach/hurd/i386/pt-setup.c (stack_setup): Likewise.
-2007-11-20 Neal H. Walfield <neal@gnu.org>
+2008-01-01 Samuel Thibault <samuel.thibault@ens-lyon.org>
- Merge changes from mainline Hurd. Update L4 bits to compile with
- those changes.
+ * include/pthread/pthread.h (pthread_spin_destroy, pthread_spin_init,
+ pthread_spin_lock, pthread_spin_trylock, pthread_spin_unlock): Use
+ __extern_inline macro instead of extern __inline.
+ * sysdeps/i386/bits/spin-lock.h (__PT_SPIN_INLINE,
+ __pthread_spin_lock): Likewise
+ * sysdeps/mach/bits/spin-lock.h (__PT_SPIN_INLINE,
+ __pthread_spin_lock): Likewise
+ * sysdeps/generic/bits/pthread.h (pthread_equal): Declare ; only
+ provide inline when __USE_EXTERN_INLINES is defined. Use __extern_inline
+ macro instead of extern __inline.
+ * sysdeps/i386/bits/memory.h (__memory_barrier): Add static to inline.
- * sysdeps/l4/pt-block.c (__pthread_block): Call l4_receive, not
- L4_Receive.
- * sysdeps/l4/pt-create-np.c (pthread_create_from_l4_tid_np): Don't
- pass TID to __pthread_create_internal. Emit a warning.
- * sysdeps/l4/pt-stack-alloc.c (allocate_page): Remove function.
- (__pthread_stack_alloc): Don't require that STACKSIZE is equal to
- __pthread_stacksize. Call mmap.
- * sysdeps/l4/pt-thread-halt.c (__pthread_thread_halt): Take
- additional argument, need_dealloc. Call __pthread_dealloc. Stop
- the thread.
- * sysdeps/l4/hurd/pt-sysdep.c (init_routine): When calling
- __pthread_create_internal, don't pass the tid.
- * tests/test-1.c (main): Use pthread_mutex_init, not
- PTHREAD_MUTEX_INITIALIZER.
-
- * pthread/pt-alloc.c: Don't include <bits/atomic.h>. Include
- <atomic.h>.
- (__pthread_free_threads): Make it an atomicptr_t, not an
- __atomicptr_t.
- (__pthread_alloc): Don't use __atomicptr_compare_and_swap, use
- atomic_compare_and_exchange_val_acq.
- * pthread/pt-create.c: Don't include <bits/atomic.h>. Include
- <atomic.h>.
- (__pthread_total): Make it an atomic_fast32_t, not an __atomic_t.
- (__pthread_create_internal): Use atomic_increment and
- atomic_decrement, not __atomic_inc and __atomic_dec.
- * pthread/pt-dealloc.c: Don't include <bits/atomic.h>. Include
- <atomic.h>.
- (__pthread_free_threads): Make it an atomicptr_t, not an
- __atomicptr_t.
- (__pthread_dealloc): Use atomic_compare_and_exchange_val_acq, not
- __atomicptr_compare_and_swap.
- * pthread/pt-exit.c: Don't include <bits/atomic.h>. Include
- <atomic.h>.
- (pthread_exit): Use atomic_decrement_and_test, not
- __atomic_dec_and_test.
- * pthread/pt-internal.h: Don't include <bits/atomic.h>. Include
- <atomic.h>.
- (__pthread_total): Make it an atomic_fast32_t, not an __atomic_t.
- * sysdeps/powerpc/bits/atomic.h: Remove file.
- * sysdeps/ia32/bits/atomic.h: Likewise.
-
2007-11-19 Thomas Schwinge <tschwinge@gnu.org>
* Makefile (CFLAGS): Don't set and instead...
@@ -555,7 +277,6 @@
* sysdeps/i386/machine-sp.h (thread_stack_pointer):
Optimize esp read.
- * i386/cthreads.h (cthread_sp): Likewise.
* include/pthread/pthread.h: Add the restrict keyword where
appropriate for full compliance.
* pthread/pt-internal.h: Likewise.
@@ -783,101 +504,13 @@
THREAD_SPECIFICS to hurd_ihash_t.
* sysdeps/hurd/pt-setspecific.c (pthread_setspecific): Call
hurd_ihash_create instead ihash_create, and hurd_ihash_add instead
-
-2007-08-06 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/bits/pthread-np.h (pthread_create_from_l4_tid_np):
- Don't require the GNU interface: use _L4_thread_id_t, not
- l4_thread_id_t.
- (pthread_pool_add_np): Likewise.
- (pthread_pool_get_np): Likewise.
- * sysdeps/l4/pt-create-np.c (pthread_create_from_l4_tid_np): Likewise.
- * sysdeps/l4/pt-pool-np.c (pool_list): Likewise.
- (pthread_pool_add_np): Likewise.
- (pthread_pool_get_np): Likewise.
-
-2005-02-08 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/posix/pt-spin.c (__pthread_spin_lock): Make a weak alias
- to _pthread_spin_lock.
- * sysdeps/l4/hurd/pt-sysdep.h (_pthread_self): Add
- __always_inline__ attribute.
- (__pthread_stack_dealloc): Likewise.
-
-2005-01-12 Neal H. Walfield <neal@gnu.org>
-
- * sysdeps/l4/pt-thread-alloc.c: Replace assert with a compile time
- warning.
- * sysdeps/l4/hurd/pt-sigstate.c (__pthread_sigstate): Don't return
- EINVAL. Pretend to work so the generic code is happy.
-
-2004-11-02 Marcus Brinkmann <marcus@gnu.org>
-
- * sysdeps/generic/bits/condition.h (__PTHREAD_COND_INITIALIZER):
- Remove compound statement.
- * pthread/pt-alloc.c (initialize_pthread): Use compound statement.
- * sysdeps/generic/pt-cond-init.c (pthread_cond_init): Likewise.
-
-2004-11-01 Marcus Brinkmann <marcus@gnu.org>
-
- * pthread/pt-create.c (__pthread_total): Change type to uatomic32_t.
- * pthread/pt-internal.h (__pthread_total): Likewise in declaration.
-
- * pthread/pt-internal.h: Include <atomic.h>, not <bits/atomic.h>.
- (__pthread_total): Change type of declaration to uatomic_max_t.
- * pthread/pt-alloc.c: Include <atomic.h>, not <bits/atomic.h>.
- (__pthread_free_threads): Change type to uatomicptr_t.
- (__pthread_alloc): Call atomic_compare_and_exchange_val_acq
- instead of __atomicptr_compare_and_swap.
- * pthread/pt-create.c: Include <atomic.h>, not <bits/atomic.h>.
- (__pthread_total): Change type to uatomic_max_t.
- (__pthread_create_internal): Call atomic_increment, not
- __atomic_inc and atomic_decrement, not __atomic_dec.
- * pthread/pt-dealloc.c: Include <atomic.h>, not <bits/atomic.h>.
- (__pthread_free_threads): Declare as uatomicptr_t.
- (__pthread_dealloc): Call atomic_compare_and_exchange_val_acq
- instead of __atomicptr_compare_and_swap.
- * pthread/pt-exit.c: Include <atomic.h>, not <bits/atomic.h>.
- (pthread_exit): Call atomic_decrement_and_test instead of
- __atomic_dec_and_test.
- * sysdeps/l4/pt-create-np.c: Do not include <bits/atomic.h>.
-
-2004-10-29 Marcus Brinkmann <marcus@gnu.org>
-
- * headers.am (AC_CONFIG_LINKS): Remove include/bits/atomic.h.
-
-2004-03-23 Marcus Brinkmann <marcus@gnu.org>
-
- * sysdeps/generic/bits/mutex.h (__PTHREAD_MUTEX_INITIALIZER):
- Remove compound statement.
- (pthread_mutex_init): Use compound statement with initializer.
- * pthread/pt-alloc.c (initialize_pthread): Likewise.
- * sysdeps/generic/pt-mutex-init.c (_pthread_mutex_init): Likewise.
-
-2004-03-19 Marcus Brinkmann <marcus@gnu.org>
-
- * sysdeps/l4/bits/pthread-np.h (pthread_pool_add_np,
- pthread_pool_get_np): New prototypes.
- * sysdeps/l4/pt-pool-np.c: New file.
- * Makefile.am (libpthread_a_SOURCES): Add pt-pool-np.c.
- * sysdeps/l4/pt-thread-alloc.c (__pthread_thread_alloc): Try to
- allocate thread from pool.
- * sysdeps/l4/pt-thread-halt.c (__pthread_thread_halt): Add thread
- to pool after stopping it.
-
-2004-03-17 Marcus Brinkmann <marcus@gnu.org>
-
- * sysdeps/l4/pt-thread-start.c (__pthread_thread_start): Use L4
- convenience interface.
-
- * sysdeps/l4/pt-spin.c (_pthread_spin_lock): Implement using new
- time period interface.
-
-2003-10-16 Johan Rydberg <jrydberg@night.trouble.net>
-
- Many changes throughout all files, converting L4 specific source
- code to the GNU libl4 interface. Integration into the hurd-l4
- infrastructure.
+ ihash_add.
+ * sysdeps/hurd/pt-getspecific.c (pthread_getspecific): Call
+ hurd_ihash_find instead of ihash_find.
+ * sysdeps/hurd/pt-destroy-specific.c (__pthread_destroy_specific):
+ Call hurd_ihash_find instead of ihash_find, hurd_ihash_remove
+ instead of ihash_remove, and hurd_ihash_free instead of
+ ihash_free.
2003-08-03 Marco Gerards <metgerards@student.han.nl>