]> sourceware.org Git - glibc.git/blobdiff - linuxthreads/ChangeLog
2000-05-05 Andreas Jaeger <aj@suse.de>
[glibc.git] / linuxthreads / ChangeLog
index b4a8cea5e0a70177ebfc8b6736bacb9a6f52b3d5..5c1c1e12988223acddfd2125e8d3f58de6a1fae4 100644 (file)
@@ -1,3 +1,576 @@
+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.
This page took 0.038059 seconds and 5 git commands to generate.