diff options
author | Ulrich Drepper <drepper@redhat.com> | 1999-09-05 00:08:27 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1999-09-05 00:08:27 +0000 |
commit | 4fe53b3aba281d102c3119f34780e5479dd4fe51 (patch) | |
tree | e180c2ad987ac3e29e8ad1236c039c471bfe46a8 /linuxthreads | |
parent | 9cb6e8783c61f9d7008e442b348f5f24b8d6a1cb (diff) | |
download | glibc-4fe53b3aba281d102c3119f34780e5479dd4fe51.zip glibc-4fe53b3aba281d102c3119f34780e5479dd4fe51.tar.gz glibc-4fe53b3aba281d102c3119f34780e5479dd4fe51.tar.bz2 |
Update.
1999-09-04 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/getaddrinfo.c: Little optimization.
1999-09-03 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/sysv/linux/syscalls.list: Rename strong name for
fork from __syscall_fork to __libc_fork.
* posix/Versions: Add __libc_fork and __vfork to version
GLIBC_2.1.2.
Diffstat (limited to 'linuxthreads')
-rw-r--r-- | linuxthreads/ChangeLog | 7 | ||||
-rw-r--r-- | linuxthreads/Versions | 2 | ||||
-rw-r--r-- | linuxthreads/ptfork.c | 16 |
3 files changed, 21 insertions, 4 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog index 108fdf4..13c85c5 100644 --- a/linuxthreads/ChangeLog +++ b/linuxthreads/ChangeLog @@ -1,3 +1,10 @@ +1999-09-03 Andreas Schwab <schwab@suse.de> + + * ptfork.c (__fork): Renamed from fork and use __libc_fork. Add + fork as weak alias. + (__vfork): New function, alias vfork. + * Versions: Export __fork, vfork, and __vfork in libpthread. + 1999-08-23 Andreas Schwab <schwab@suse.de> * signals.c (pthread_sighandler): Add SIGCONTEXT_EXTRA_ARGS to diff --git a/linuxthreads/Versions b/linuxthreads/Versions index 38b135d..c0ec792 100644 --- a/linuxthreads/Versions +++ b/linuxthreads/Versions @@ -46,6 +46,7 @@ libpthread { __close; __connect; __fcntl; __lseek; __open; __read; __send; __wait; __write; _IO_flockfile; _IO_ftrylockfile; _IO_funlockfile; + vfork; __fork; # POSIX.1c extensions to libc. flockfile; funlockfile; ftrylockfile; @@ -115,5 +116,6 @@ libpthread { } GLIBC_2.1.2 { __pthread_kill_other_threads_np; + __vfork; } } diff --git a/linuxthreads/ptfork.c b/linuxthreads/ptfork.c index 2245407..1dfa8b6 100644 --- a/linuxthreads/ptfork.c +++ b/linuxthreads/ptfork.c @@ -73,11 +73,11 @@ static inline void pthread_call_handlers(struct handler_list * list) for (/*nothing*/; list != NULL; list = list->next) (list->handler)(); } -extern int __fork(void); +extern int __libc_fork(void); -int fork(void) +pid_t __fork(void) { - int pid; + pid_t pid; struct handler_list * prepare, * child, * parent; pthread_mutex_lock(&pthread_atfork_lock); @@ -86,7 +86,7 @@ int fork(void) parent = pthread_atfork_parent; pthread_mutex_unlock(&pthread_atfork_lock); pthread_call_handlers(prepare); - pid = __fork(); + pid = __libc_fork(); if (pid == 0) { __pthread_reset_main_thread(); __fresetlockfiles(); @@ -96,3 +96,11 @@ int fork(void) } return pid; } + +weak_alias (__fork, fork); + +pid_t __vfork(void) +{ + return __fork(); +} +weak_alias (__vfork, vfork); |