diff --git a/ChangeLog b/ChangeLog index 0623e2056e..c0c028569d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2002-12-31 Ulrich Drepper + + * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle + is available. + 2002-12-31 Andreas Jaeger * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync @@ -9,7 +14,7 @@ * sysdeps/unix/sysv/linux/kernel_stat.h (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New. - * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Readd + * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add __unused[1-3] since they're needed by some platforms. Handle _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64. diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog index fafea62907..20ee770f8f 100644 --- a/linuxthreads/ChangeLog +++ b/linuxthreads/ChangeLog @@ -1,3 +1,10 @@ +2002-12-31 Ulrich Drepper + + * sysdeps/unix/sysv/linux/fork.h: Add libc_hidden_proto for + __register_atfork. + * sysdeps/unix/sysv/linux/register-atfork.c: Add libc_hidden_def + for __register_atfork. + 2002-12-31 Jakub Jelinek * sysdeps/i386/i686/pt-machine.h: Use __ASSEMBLER__ instead of diff --git a/linuxthreads/sysdeps/unix/sysv/linux/fork.h b/linuxthreads/sysdeps/unix/sysv/linux/fork.h index e84119a2ef..76708e3e39 100644 --- a/linuxthreads/sysdeps/unix/sysv/linux/fork.h +++ b/linuxthreads/sysdeps/unix/sysv/linux/fork.h @@ -53,6 +53,7 @@ extern int __register_atfork (void (*__prepare) (void), void (*__parent) (void), void (*__child) (void), void *dso_handle); +libc_hidden_proto (__register_atfork) #ifndef ARCH_FORK # define ARCH_FORK() INLINE_SYSCALL (fork, 0) diff --git a/linuxthreads/sysdeps/unix/sysv/linux/register-atfork.c b/linuxthreads/sysdeps/unix/sysv/linux/register-atfork.c index 2dce262a38..e4490e73e9 100644 --- a/linuxthreads/sysdeps/unix/sysv/linux/register-atfork.c +++ b/linuxthreads/sysdeps/unix/sysv/linux/register-atfork.c @@ -85,3 +85,4 @@ __register_atfork (prepare, parent, child, dso_handle) return 0; } +libc_hidden_def (__register_atfork) diff --git a/malloc/thread-m.h b/malloc/thread-m.h index d3352d1fe5..d65ba913b2 100644 --- a/malloc/thread-m.h +++ b/malloc/thread-m.h @@ -77,9 +77,14 @@ extern void *__dso_handle __attribute__ ((__weak__)); #include -#define thread_atfork(prepare, parent, child) \ +#ifdef SHARED +# define thread_atfork(prepare, parent, child) \ + __register_atfork (prepare, parent, child, __dso_handle) +#else +# define thread_atfork(prepare, parent, child) \ __register_atfork (prepare, parent, child, \ &__dso_handle == NULL ? NULL : __dso_handle) +#endif #elif defined(MUTEX_INITIALIZER) /* Assume hurd, with cthreads */ diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 6eb17e4fcb..e61e8b5a13 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,10 @@ +2002-12-31 Ulrich Drepper + + * sysdeps/unix/sysv/linux/fork.h: Add libc_hidden_proto for + __register_atfork. + * sysdeps/unix/sysv/linux/register-atfork.c: Add libc_hidden_def + for __register_atfork. + 2002-12-31 Jakub Jelinek * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h: Use __ASSEMBLER__ diff --git a/nptl/sysdeps/unix/sysv/linux/fork.h b/nptl/sysdeps/unix/sysv/linux/fork.h index 906cf7fcc0..f3f4c38a55 100644 --- a/nptl/sysdeps/unix/sysv/linux/fork.h +++ b/nptl/sysdeps/unix/sysv/linux/fork.h @@ -54,3 +54,4 @@ extern int __register_atfork (void (*__prepare) (void), void (*__parent) (void), void (*__child) (void), void *dso_handle); +libc_hidden_proto (__register_atfork) diff --git a/nptl/sysdeps/unix/sysv/linux/register-atfork.c b/nptl/sysdeps/unix/sysv/linux/register-atfork.c index ef70dde8a2..af567a0b18 100644 --- a/nptl/sysdeps/unix/sysv/linux/register-atfork.c +++ b/nptl/sysdeps/unix/sysv/linux/register-atfork.c @@ -85,3 +85,4 @@ __register_atfork (prepare, parent, child, dso_handle) return 0; } +libc_hidden_def (__register_atfork)