diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2021-01-19 09:18:46 -0300 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2021-03-12 10:19:58 -0300 |
commit | 7384193b71a1720a381b7150ed44e07b13af45d5 (patch) | |
tree | 643be65aad786dde3cf3bcffe865509fb2d5f675 /nptl | |
parent | 2883de072093ecdb3369cdcd72d69d4fc7b5ae71 (diff) | |
download | glibc-7384193b71a1720a381b7150ed44e07b13af45d5.tar glibc-7384193b71a1720a381b7150ed44e07b13af45d5.tar.gz glibc-7384193b71a1720a381b7150ed44e07b13af45d5.tar.bz2 glibc-7384193b71a1720a381b7150ed44e07b13af45d5.zip |
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/Makefile | 1 | ||||
-rw-r--r-- | nptl/Versions | 2 | ||||
-rw-r--r-- | nptl/pt-fork.c | 49 |
3 files changed, 0 insertions, 52 deletions
diff --git a/nptl/Makefile b/nptl/Makefile index e5d69e8858..b51deff6a3 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 186befebfd..039cff38aa 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 5d694cdbbe..0000000000 --- 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 |