aboutsummaryrefslogtreecommitdiff
path: root/nptl
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2021-01-19 09:18:46 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2021-03-12 10:19:58 -0300
commit7384193b71a1720a381b7150ed44e07b13af45d5 (patch)
tree643be65aad786dde3cf3bcffe865509fb2d5f675 /nptl
parent2883de072093ecdb3369cdcd72d69d4fc7b5ae71 (diff)
downloadglibc-7384193b71a1720a381b7150ed44e07b13af45d5.zip
glibc-7384193b71a1720a381b7150ed44e07b13af45d5.tar.gz
glibc-7384193b71a1720a381b7150ed44e07b13af45d5.tar.bz2
nptl: Move fork into libc
This is part of the libpthread removal project: <https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html> Checked on x86_64-linux-gnu.
Diffstat (limited to 'nptl')
-rw-r--r--nptl/Makefile1
-rw-r--r--nptl/Versions2
-rw-r--r--nptl/pt-fork.c49
3 files changed, 0 insertions, 52 deletions
diff --git a/nptl/Makefile b/nptl/Makefile
index e5d69e8..b51deff 100644
--- a/nptl/Makefile
+++ b/nptl/Makefile
@@ -114,7 +114,6 @@ libpthread-routines = \
pt-allocrtsig \
pt-cleanup \
pt-fcntl \
- pt-fork \
pt-interp \
pt-longjmp \
pt-raise \
diff --git a/nptl/Versions b/nptl/Versions
index 186befe..039cff3 100644
--- a/nptl/Versions
+++ b/nptl/Versions
@@ -107,7 +107,6 @@ libpthread {
__connect;
__errno_location;
__fcntl;
- __fork;
__h_errno_location;
__lseek;
__open;
@@ -138,7 +137,6 @@ libpthread {
connect;
fcntl;
flockfile;
- fork;
fsync;
ftrylockfile;
funlockfile;
diff --git a/nptl/pt-fork.c b/nptl/pt-fork.c
deleted file mode 100644
index 5d694cd..0000000
--- a/nptl/pt-fork.c
+++ /dev/null
@@ -1,49 +0,0 @@
-/* ABI compatibility for 'fork' symbol in libpthread ABI.
- Copyright (C) 2002-2021 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-
-#include <unistd.h>
-#include <shlib-compat.h>
-
-/* libpthread once had its own fork, though there was no apparent reason
- for it. There is no use in having a separate symbol in libpthread, but
- the historical ABI requires it. For static linking, there is no need to
- provide anything here--the libc version will be linked in. For shared
- library ABI compatibility, there must be __fork and fork symbols in
- libpthread.so.
-
- With an IFUNC resolver, it would be possible to avoid the
- indirection, but the IFUNC resolver might run before the
- __libc_fork symbol has been relocated, in which case the IFUNC
- resolver would not be able to provide the correct address. */
-
-#if SHLIB_COMPAT (libpthread, GLIBC_2_0, GLIBC_2_22)
-
-static pid_t __attribute__ ((used))
-fork_compat (void)
-{
- return __libc_fork ();
-}
-
-strong_alias (fork_compat, fork_alias)
-compat_symbol (libpthread, fork_alias, fork, GLIBC_2_0);
-
-strong_alias (fork_compat, __fork_alias)
-compat_symbol (libpthread, __fork_alias, __fork, GLIBC_2_0);
-
-#endif