+2000-05-05 Andreas Jaeger <aj@suse.de>
+
+ * sysdeps/unix/sysv/linux/i386/getcpuclockid.c
+ (pthread_getcpuclockid): Correct test for ourselves.
+
+2000-05-05 Ulrich Drepper <drepper@redhat.com>
+
+ * internals.h (struct _pthread_descr_struct): Reorganization.
+ Allocate room for 16 pointers at head of the structure for future
+ thread-local data handling. Move p_self member in this area.
+ * manager.c (pthread_handle_create): Adjust use of p_self.
+ * sysdeps/i386/useldt.h (THREAD_SELF): Likewise.
+ * pthread.c (__pthread_initial_thread): Adjust initialization.
+ (__pthread_manager_thread): Likewise.
+
+2000-04-29 Bruno Haible <haible@clisp.cons.org>
+
+ * join.c (pthread_exit): Use THREAD_GETMEM_NC instead of THREAD_GETMEM
+ for eventmask larger than 1 word.
+
+2000-04-27 Ulrich Drepper <drepper@redhat.com>
+
+ * Versions [libpthread] (GLIBC_2.2): Add __pthread_initialize_minimal.
+ * pthread.c (__pthread_initialize_minimal): New function. Perform
+ minimal initialization.
+ (pthread_initialize): Remove this code here.
+ * sysdeps/i386/i686/pt-machine.h: Include "../useldt.h" again. We
+ are working around the problem in glibc.
+
+2000-04-25 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/i386/i686/pt-machine.h: Do not use "../useldt.h" for
+ now. First gcc must be fixed (more concrete: libgcc).
+
+2000-04-24 Ulrich Drepper <drepper@redhat.com>
+
+ * pthread.c: Remove special treatement for interrupt handlers on x86.
+ * manager.c (pthread_free): Use FREE_THREAD not FREE_THREAD_SELF.
+ * sysdeps/i386/useldt.h: Use "q" constraint instead of "r" where
+ necessary.
+ * sysdeps/i386/i686/pt-machine.h: Include "../useldt.h".
+
+2000-04-24 Mark Kettenis <kettenis@gnu.org>
+
+ * join.c (pthread_exit): Set p_terminated after reporting the
+ termination event instead of before.
+
+2000-04-20 Jakub Jelinek <jakub@redhat.com>
+
+ * sysdeps/pthread/bits/libc-lock.h: Only declare __pthread_rwlock_*
+ if __USE_UNIX98.
+
+2000-04-18 Andreas Jaeger <aj@suse.de>
+
+ * Versions: Use ld instead of ld.so.
+
+2000-04-18 Jakub Jelinek <jakub@redhat.com>
+
+ * sysdeps/unix/sysv/linux/sparc/bits/sigcontext.h (struct sigcontext):
+ Remove the typedef keyword.
+
+2000-04-18 Jakub Jelinek <jakub@redhat.com>
+
+ * sysdeps/sparc/sparc64/pt-machine.h (MEMORY_BARRIER): Use membar,
+ not stbar.
+ (READ_MEMORY_BARRIER): Define.
+ * spinlock.c (__pthread_spin_unlock): Use READ_MEMORY_BARRIER, not
+ MEMORY_BARRIER.
+ * internals.h (READ_MEMORY_BARRIER): Define if not defined in sysdep
+ headers.
+
+2000-04-17 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/unix/sysv/linux/i386/getcpuclockid.c
+ (pthread_getcpuclockid): Don't compare thread_id with thread_self,
+ use thread_handle().
+
+2000-04-16 Ulrich Drepper <drepper@redhat.com>
+
+ * condvar.c (pthread_cond_timedwait_relative): Don't test for owner
+ if fast mutex is used. Don't initialize `already_canceled' twice.
+ Correctly test for return value of timedsuspend.
+
+ * pthread.c: Correct long-time braino. We never set SA_SIGINFO and
+ therefore don't need the _rt versions of the signal handlers.
+
+2000-04-15 Ulrich Drepper <drepper@redhat.com>
+
+ * pthread.c (pthread_yield): New function.
+ * sysdeps/pthread/pthread.h (pthread_yield): Add prototype.
+ * Versions [libpthread] (GLIBC_2.2): Add pthread_yield.
+ * internals.h: Declare __pthread_yield.
+
+ * pthread.c (pthread_initialize): Avoid a bit more code if
+ realtime signals are known to exist.
+
+ * pthread.c: Is __ASSUME_REALTIME_SIGNALS then avoid generating code
+ to dynamically detect RT signals and avoid generating compatibility
+ functions with old kernel.
+ * restart.h (restart) [__ASSUME_REALTIME_SIGNALS]: Use
+ __pthread_restart_new directly.
+ (suspend) [__ASSUME_REALTIME_SIGNALS]: Use
+ __pthread_wait_for_restart_signal directly.
+ (timedsuspend) [__ASSUME_REALTIME_SIGNALS]: Use
+ __pthread_timedsuspend_new directly.
+
+2000-04-15 Ulrich Drepper <drepper@redhat.com>
+
+ * condvar.c: Remove all the special code to handle cond_timedwait.
+ Use timedsuspend instead.
+ * internals.h: Declare __pthread_timedsuspend_old,
+ __pthread_timedsuspend_new, and __pthread_timedsuspend.
+ Remove declaration of __pthread_init_condvar.
+ * pthread.c: Define __pthread_timedsuspend variable.
+ (__pthread_timedsuspend_old): New function. Timed suspension
+ implementation for old Linux kernels.
+ (__pthread_timedsuspend_new): New function. Timed suspension
+ implementation for new Linux kernels.
+ * restart.h (timedsuspend): New function. Call appropriate
+ suspension function through __pthread_timedsuspend.
+ * semaphore.c (sem_timedwait): Use timedsuspend, don't duplicate
+ the code.
+ Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
+
+ * internals.h (WRITE_MEMORY_BARRIER): Define as MEMORY_BARRIER if
+ undefined.
+ * spinlock.c: Use WRITE_MEMORY_BARRIER instead of MEMORY_BARRIER
+ where possible.
+ * sysdeps/alpha/pt-machine.h: Define WRITE_MEMORY_BARRIER.
+ * sysdeps/sparc/sparc64/pt-machine.h: Likewise.
+
+ * sysdeps/unix/sysv/linux/bits/posix_opt.h: Add _POSIX_SPAWN.
+ * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
+
+2000-04-14 Andreas Jaeger <aj@suse.de>
+
+ * weaks.c: Fix typo.
+
+ * shlib-versions (mips.*-.*-linux.*): Support only GLIBC 2.0 and
+ 2.2 for linuxthreads.
+
+2000-04-13 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/unix/sysv/linux/i386/getcpuclockid.c
+ (pthread_getcpuclockid): Fix typo.
+
+2000-04-12 Ulrich Drepper <drepper@redhat.com>
+
+ * Makefile (libpthread-routines): Add getcpuclockid.
+ * Versions [libpthread] (GLIBC_2.2): Add pthread_getcpuclockid.
+ * sysdeps/pthread/getcpuclockid.c: New file.
+ * sysdeps/unix/sysv/linux/i386/getcpuclockid.c: New file.
+ * sysdeps/pthread/pthread.h: Add prototype for pthread_getcpuclockid.
+
+ * sysdeps/unix/sysv/linux/bits/posix_opt.h (_POSIX_SPIN_LOCKS):
+ Defined.
+ * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
+
+ * sysdeps/pthread/pthread.h: Add prototypes for pthread_spin_init,
+ pthread_spin_destroy, pthread_spin_lock, pthread_spin_trylock,
+ and pthread_spin_unlock.
+ * sysdeps/pthread/bits/pthreadtypes.h: Change struct _pthread_fastlock
+ into pthread_spinlock_t. Change all uses.
+ * spinlock.c: Implement pthread_spin_lock.
+ Rename __pthread_unlock to __pthread_spin_unlock and define weak
+ alias for real name.
+ Define pthread_spin_trylock, pthread_spin_init, and
+ pthread_spin_destroy.
+ Change all uses of _pthread_fastlock to pthread_spinlock_t.
+ * spinlock.h: Rename __pthread_unlock to __pthread_spin_unlock.
+ Change all uses of _pthread_fastlock to pthread_spinlock_t.
+ * Versions [libpthread] (GLIBC_2.2): Add pthread_spin_init,
+ pthread_spin_destroy, pthread_spin_lock, pthread_spin_trylock,
+ and pthread_spin_unlock.
+ * cancel.c: Use __pthread_spin_unlock instead of __pthread_unlock.
+ Change all uses of _pthread_fastlock to pthread_spinlock_t.
+ * condvar.c: Likewise.
+ * internals.h: Likewise.
+ * join.c: Likewise.
+ * manager.c: Likewise.
+ * mutex.c: Likewise.
+ * pthread.c: Likewise.
+ * rwlock.c: Likewise.
+ * semaphore.c: Likewise.
+ * signals.c: Likewise.
+
+ * sysdeps/unix/sysv/linux/bits/posix_opt.h: Add various new POSIX
+ macros.
+ * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: New file.
+
+2000-04-11 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/unix/sysv/linux/bits/posix_opt.h: Add
+ _POSIX_SHARED_MEMORY_OBJECTS.
+
+2000-04-11 Andreas Jaeger <aj@suse.de>
+
+ * sysdeps/mips/pt-machine.h (MEMORY_BARRIER): Define.
+ (__compare_and_swap): Mark as modifying memory.
+
+2000-04-11 Geoff Keating <geoffk@cygnus.com>
+
+ * sysdeps/powerpc/pt-machine.h (MEMORY_BARRIER): Don't be
+ __volatile__.
+ (__compare_and_swap): Replace other 'sync' with MEMORY_BARRIER.
+ Don't have the 'asm' __volatile__.
+
+2000-04-11 Ulrich Drepper <drepper@redhat.com>
+
+ * internals.h: Define MEMORY_BARRIER as empty if not defined already.
+ * spinlock.c (__pthread_lock): Add memory barriers.
+ (__pthread_unlock): Likewise.
+ * sysdeps/alpha/pt-machine.h (MEMORY_BARRIER): Define using mb
+ instruction.
+ (RELEASE): Not needed anymore.
+ (__compare_and_swap): Mark asm as modifying memory.
+ * sysdeps/powerpc/pt-machine.h (sync): Remove. Replace with definition
+ of MEMORY_BARRIER.
+ (__compare_and_swap): Use MEMORY_BARRIER instead of sync.
+ * sysdeps/sparc/sparc32/pt-machine.h (RELEASE): Not needed anymore.
+ (MEMORY_BARRIER): Define using stbar.
+ * sysdeps/sparc/sparc64/pt-machine.h (MEMORY_BARRIER): Define using
+ stbar.
+ (__compare_and_swap): Use MEMORY_BARRIER to ensure ordering.
+ Patch by Xavier Leroy <Xavier.Leroy@inria.fr> based on comments by
+ Mike Burrows <m3b@pa.dec.com>.
+
+2000-04-09 Ulrich Drepper <drepper@redhat.com>
+
+ * signals.c (sigaction): Fix return value for the case SIG is one
+ of the signals the implementation uses.
+ Patch by Xavier.Leroy@inria.fr.
+
+2000-04-01 Andreas Jaeger <aj@suse.de>
+
+ * attr.c: Use shlib-compat macros.
+ * oldsemaphore.c: Likewise.
+ * pthread.c: Likewise.
+ * weaks.c: Likewise.
+
+2000-03-26 Ulrich Drepper <drepper@redhat.com>
+
+ * semaphore.c (sem_timedwait): New function.
+ Patch by Carl Mailloux <carlm@oricom.ca>.
+ * semaphore.h: Declare sem_timedwait.
+ * Versions [libpthread] (GLIBC_2.2): Add sem_timedwait.
+
+2000-03-26 Roland McGrath <roland@baalperazim.frob.com>
+
+ * sysdeps/pthread/Makefile: File removed.
+
+2000-03-23 Ulrich Drepper <drepper@redhat.com>
+
+ * mutex.c (__pthread_reset_pthread_once): Reset once_masterlock.
+ * internals.h (__pthread_reset_pthread_once): Add prototype.
+ * ptfork.c (__fork): Call __pthread_reset_pthread_once.
+
+ * manager.c (pthread_handle_create): Store ID of new thread before
+ clone call.
+
+2000-03-21 Ulrich Drepper <drepper@redhat.com>
+
+ * attr.c: Use new macros from shlib-compat.h to define versions.
+ * oldsemaphore.c: Likewise.
+ * semaphore.c: Likewise.
+ * weaks.c: Likewise.
+
+ * pthread.c: Update for new SHLIB_COMPAT definition.
+
+ * manager.c (__pthread_manager): Unmask debug signal.
+
+ * pthread.c (pthread_initialize): Test for address of __dso_handle
+ being NULL, not value. Use __on_exit, not on_exit.
+ Patch by Andreas Jaeger <aj@suse.de>.
+
+ * pthread.c: Use new macros from shlib-compat.h to define versions.
+
+2000-03-19 Ulrich Drepper <drepper@redhat.com>
+
+ * pthread.c (pthread_initialize): Instead of on_exit use
+ __cxa_atexit if __dso_label is available to allow unloading the
+ libpthread shared library.
+
+2000-03-16 Ulrich Drepper <drepper@redhat.com>
+
+ * condvar.c: Make tests for ownership of mutex less strict.
+
+2000-03-14 Ulrich Drepper <drepper@redhat.com>
+
+ * condvar.c (pthread_cond_wait): Check whether mutex is owned by
+ current thread and return error if not.
+ (pthread_cond_timedwait_relative_old): Likewise.
+ (pthread_cond_timedwait_relative_new): Likewise.
+
+ * mutex.c (__pthread_once): Handle cancelled init function correctly.
+ (pthread_once_cancelhandler): New function.
+ Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
+
+2000-03-14 Andreas Jaeger <aj@suse.de>
+
+ * pthread.c (pthread_handle_sigcancel_rt): GS has been renamed to
+ REG_GS.
+ (pthread_handle_sigrestart_rt): Likewise.
+ * signals.c (pthread_sighandler_rt): Likewise.
+
+2000-03-02 Andreas Jaeger <aj@suse.de>
+
+ * sysdeps/pthread/bits/libc-lock.h: Fix typo.
+ Reported by Sean Chen <sean.chen@turbolinux.com>.
+
+2000-02-28 Andreas Jaeger <aj@suse.de>
+
+ * rwlock.c: Fix typo.
+
+2000-02-27 Ulrich Drepper <drepper@redhat.com>
+
+ * rwlock.c: Define __* variants of the functions and make old names
+ aliases.
+ * Versions [GLIBC_2.2]: Export the __pthread_rwlock_* functions.
+ * sysdeps/pthread/bits/libc-lock.h: Define __libc_rwlock_* macros.
+
+2000-02-25 Andreas Jaeger <aj@suse.de>
+
+ * Versions: Export pread, __pread64, pread64, pwrite, __pwrite64,
+ pwrite64, lseek64, open64, and __open64 with version 2.2.
+
+2000-02-22 Ulrich Drepper <drepper@redhat.com>
+
+ * semaphore.h (SEM_FAILED): Use 0 not NULL.
+
+2000-02-14 Ulrich Drepper <drepper@redhat.com>
+
+ * condvar.c (pthread_cond_timedwait_relative_old): Tight loop with
+ nanosleep does not work either. Get absolute time inside the
+ loop.
+ (pthread_cond_timedwait_relative_new): Likewise.
+ Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
+
+2000-02-13 Andreas Jaeger <aj@suse.de>
+
+ * condvar.c (pthread_cond_timedwait_relative_new): Fix last patch.
+ (pthread_cond_timedwait_relative_old): Likewise.
+
+2000-02-13 Ulrich Drepper <drepper@redhat.com>
+
+ * condvar.c (pthread_cond_timedwait_relative_old): Undo last patch
+ but keep the code around. A bug in the kernel prevent us from
+ using the code.
+ (pthread_cond_timedwait_relative_new): Likewise.
+ (PR libc/1597 and libc/1598).
+
+2000-02-01 Kaz Kylheku <kaz@ashi.footprints.net>
+
+ * condvar.c (pthread_cond_timedwait_relative_old): Do tight
+ loop around nanosleep calls instead of around most of the function
+ (pthread_cond_timedwait_relative_new): Likewise.
+ body. Got rid of backwards goto and one local.
+
+2000-01-31 Ulrich Drepper <drepper@redhat.com>
+
+ * condvar.c (pthread_cond_timedwait_relative_old): Recompute time
+ before every nanosleep call to account for time spent in the rest
+ of the function.
+ (pthread_cond_timedwait_relative_new): Likewise.
+ Patch by khendricks@ivey.uwo.ca (PR libc/1564).
+
+2000-01-29 Ulrich Drepper <drepper@redhat.com>
+
+ * condvar.c (pthread_cond_timedwait_relative_old): Get remaining time
+ from nanosleep call so that in case we restart we only wait for the
+ remaining time.
+ (pthread_cond_timedwait_relative_new): Likewise.
+ Patch by khendricks@ivey.uwo.ca (PR libc/1561).
+
+2000-01-18 Ulrich Drepper <drepper@cygnus.com>
+
+ * manager.c (pthread_allocate_stack): Compute guard page address
+ correctly. Patch by HJ Lu.
+
+ * sysdeps/pthread/pthread.h: Define
+ PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP.
+
+2000-01-16 Ulrich Drepper <drepper@cygnus.com>
+
+ * rwlock.c (pthread_rwlock_unlock): Correct one more problem with
+ preference handling.
+ (pthread_rwlockattr_setkind_np): Allow
+ PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP.
+ Patches by Kaz Kylheku <kaz@ashi.footprints.net>.
+
+2000-01-12 Ulrich Drepper <drepper@cygnus.com>
+
+ * internals.h (pthread_readlock_info): New structure.
+ (_pthread_descr_struct): Add p_readlock_list, p_readlock_free, and
+ p_untracked_readlock_count.
+ * pthread.c (__pthread_initial_thread, pthread_manager_thread):
+ Add initializers for new fields.
+ * manager.c (pthread_free): Free read/write lock lists.
+ * queue.h (queue_is_empty): New function.
+ * rwlock.c: Implement requirements about when readers should get
+ locks assigned.
+ * sysdeps/pthread/pthread.h
+ (PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP): New definition.
+ * sysdeps/pthread/bits/pthreadtypes.h (struct _pthread_rwlock_t):
+ Define this name as well.
+ Patches by Kaz Kylheku <kaz@ashi.footprints.net>.
+
+2000-01-05 Ulrich Drepper <drepper@cygnus.com>
+
+ * pthread.c (__pthread_initial_thread, pthread_manager_thread):
+ Adjust initializers for struct _pthread_descr_struct change.
+ * internals.h (struct _pthread_descr_struct): Move new elements to
+ the end.
+
+2000-01-03 Kaz Kylheku <kaz@ashi.footprints.net>
+
+ Redesigned how cancellation unblocks a thread from internal
+ cancellation points (sem_wait, pthread_join,
+ pthread_cond_{wait,timedwait}).
+ Cancellation won't eat a signal in any of these functions
+ (*required* by POSIX and Single Unix Spec!).
+ * condvar.c: Spontaneous wakeup on pthread_cond_timedwait won't eat a
+ simultaneous condition variable signal (not required by POSIX
+ or Single Unix Spec, but nice).
+ * spinlock.c: __pthread_lock queues back any received restarts
+ that don't belong to it instead of assuming ownership of lock
+ upon any restart; fastlock can no longer be acquired by two threads
+ simultaneously.
+ * restart.h: Restarts queue even on kernels that don't have
+ queued real time signals (2.0, early 2.1), thanks to atomic counter,
+ avoiding a rare race condition in pthread_cond_timedwait.
+
+1999-12-31 Andreas Jaeger <aj@suse.de>
+
+ * internals.h: Remove duplicate prototype declarations.
+
+ * weaks.c: Remove __THROW from prototypes since the file is not
+ compiled by a C++ compiler.
+ * internals.h: Likewise.
+
+1999-12-30 Andreas Jaeger <aj@suse.de>
+
+ * sysdeps/pthread/pthread.h: Move internal functions to...
+ * sysdeps/pthread/bits/libc-lock.h: ...here.
+
+1999-12-29 Andreas Jaeger <aj@suse.de>
+
+ * sysdeps/pthread/pthread.h: Fix typos, reformat comments.
+
+1999-12-28 Ulrich Drepper <drepper@cygnus.com>
+
+ * sysdeps/alpha/pt-machine.h: Move stack_pointer definition to the
+ beginning.
+
+ * manager.c (__pthread_start): Add one more cast to prevent
+ warning on 64bit machines.
+
+1999-12-21 Ulrich Drepper <drepper@cygnus.com>
+
+ * manager.c (pthread_handle_create): Set p_pid of new thread
+ before calling the callback function to report a new thread.
+
+1999-12-20 Andreas Jaeger <aj@suse.de>
+
+ * pthread.c (pthread_initialize): Move getrlimit call after
+ setting of errno.
+
+1999-12-18 Ulrich Drepper <drepper@cygnus.com>
+
+ * Versions: Export pread, __pread64, pread64, pwrite, __pwrite64,
+ pwrite64, lseek64, open64, and __open64.
+ * wrapsyscall.c: Define pread, __pread64, pread64, pwrite, __pwrite64,
+ pwrite64, lseek64, open64, and __open64.
+
+ * manager.c (pthread_allocate_stack): Correct computation of
+ new_thread_bottom. Correct handling of stack size and when the
+ rlimit method to guard for stack growth is used.
+ * pthread.c (pthread_initialize): Stack limit must be STACK_SIZE
+ minus one pagesize (not two).
+
+1999-12-03 Andreas Jaeger <aj@suse.de>
+
+ * Versions: Add __res_state with version GLIBC_2.2.
+
+ * errno.c (__res_state): New function to return thread specific
+ resolver state.
+
+ * pthread.c (pthread_initialize): Initialize p_resp.
+ (__pthread_reset_main_thread): Also set p_resp.
+
+ * manager.c (pthread_handle_create): Initialize p_resp.
+
+ * internals.h: Add thread specific resolver state.
+ Based on patches by Adam D. Bradley <artdodge@cs.bu.edu>.
+
+1999-12-01 Ulrich Drepper <drepper@cygnus.com>
+
+ * sysdeps/i386/pt-machine.h: Move stack_pointer definition to the
+ beginning.
+ * sysdeps/i386/i686/pt-machine.h: Likewise.
+ Patches by Alan Modra <alan@SPRI.Levels.UniSA.Edu.Au>.
+
+1999-11-23 Ulrich Drepper <drepper@cygnus.com>
+
+ * manager.c (pthread_start_thread_event): Initialize p_pid already
+ here.
+
+1999-11-22 Ulrich Drepper <drepper@cygnus.com>
+
+ * internals.h: Add prototype for __pthread_manager_event.
+ * manager.c (__pthread_manager_event): New function.
+ (pthread_start_thread_event): Correct computation of self.
+ Use INIT_THREAD_SELF.
+ * pthread.c (__pthread_manager_thread): Initialize p_lock.
+ (__pthread_initialize_manager): Respect event flags also for creation
+ of the manager thread.
+
+1999-11-08 Ulrich Drepper <drepper@cygnus.com>
+
+ * pthread.c (__pthread_initialize_manager): Initialize
+ __pthread_manager_thread.p_tid.
+
+1999-11-02 Ulrich Drepper <drepper@cygnus.com>
+
+ * internals.h: Declare __pthread_last_event.
+ * manager.c: Define __pthread_last_event.
+ (pthread_handle_create): Set __pthread_last_event.
+ (pthread_exited): Likewise.
+ * join.c (pthread_exit): Likewise.
+
+ * Makefile (libpthread-routines): Add events.
+ * events.c: New file.
+ * internals.h: Protect against multiple inclusion.
+ Include thread_dbP.h header.
+ (struct _pthread_descr_struct): Add new fields p_report_events and
+ p_eventbuf.
+ Declare event reporting functions.
+ * join.c (pthread_exit): Signal event if this is wanted.
+ * manager.c (__pthread_threads_events): New variable.
+ (pthread_handle_create): Take new parameters with event information.
+ Signal TD_CREATE event if wanted.
+ (__pthread_manager): Adjust pthread_handle_create call.
+ (pthread_start_thread_event): New function. Block until manager is
+ finished and then call pthread_start_thread.
+ (pthread_exited): Signal TD_REAP event if wanted.
+
+1999-10-26 Ulrich Drepper <drepper@cygnus.com>
+
+ * restart.h (suspend_with_cancellation): Rewrite as a macro.
+
+ * condvar.c (pthread_cond_timedwait_relative): Don't mark as inline.
+
+1999-10-25 Andreas Jaeger <aj@suse.de>
+
+ * internals.h: Remove K&R compatibility.
+ * no-tsd.c: Likewise.
+ * semaphore.h: Likewise.
+ * signals.c: Likewise.
+ * sysdeps/pthread/bits/libc-tsd.h: Likewise.
+ * sysdeps/unix/sysv/linux/bits/sigthread.h: Likewise.
+ * weaks.c: Likewise.
+
+1999-10-21 Xavier Leroy <Xavier.Leroy@inria.fr>
+
+ * linuxthreads/pthread.c: For i386, wrap pthread_handle_sigrestart
+ and pthread_handle_sigcancel with functions that restore
+ %gs from the signal context. For each signal handling function,
+ two wrappers are required, one for a non-RT signal and one for
+ a RT signal.
+ * linuxthreads/signal.c: For i386, add code to restore %gs
+ from the signal context in pthread_sighandler and
+ pthread_sighandler_rt.
+
1999-10-17 Ulrich Drepper <drepper@cygnus.com>
* internals.h (PTHREAD_START_ARGS_INITIALIZER): Add cast.