78d1724d53
nptl: Remove send from libpthread
...
The libc version is identical and built with same flags. Both aarch64
and nios2 also requires to export __send and tt was done previously with
the HAVE_INTERNAL_SEND_SYMBOL (which forced the symbol creation).
All __send callers are internal to libc and the original issue that
required the symbol export was due a missing libc_hidden_def. So
a compat symbol is added for __send and the libc_hidden_def is
defined regardless.
Checked on x86_64-linux-gnu and i686-linux-gnu.
2021-03-26 13:36:17 -03:00
d5ddd583da
nptl: Move system to libc
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:39 -03:00
9cf242997d
nptl: Move fcntl from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:39 -03:00
729cb5a2a7
nptl: Remove sendmsg from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:39 -03:00
0cf67de816
nptl: Remove recvmsg from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:39 -03:00
2d6f4ebd65
nptl: Remove sigwait from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:39 -03:00
1e157b9cb4
nptl: Remove tcdrain from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:39 -03:00
c29386fd50
nptl: Remove pause from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:39 -03:00
0c9d4925fe
nptl: Remove msync from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:39 -03:00
fc495dc4e9
nptl: Remove fsync from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:39 -03:00
6f2e00cac5
nptl: Remove sendto from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:39 -03:00
643a88a9c1
nptl: Remove recvfrom from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:39 -03:00
494c3beec9
nptl: Remove recv from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:39 -03:00
3ddf9bc185
nptl: Remove connect from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:39 -03:00
c59f716993
nptl: Remove accept from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:38 -03:00
bdfed2e2cd
nptl: Remove close from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 15:54:24 -03:00
baab50cfb9
nptl: Remove read from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 08:21:29 -03:00
173e0ab081
nptl: Remove write from libpthread
...
The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
2021-03-18 08:20:43 -03:00
7384193b71
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.
2021-03-12 10:19:58 -03:00
07a73d5219
nptl: Move pthread_gettattr_np into libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
Use __getline instead of __getdelim to avoid a localplt failure.
Likewise for __getrlimit/getrlimit.
The abilist updates were performed by:
git ls-files 'sysdeps/unix/sysv/linux/**/libc.abilist' \
| while read x ; do
echo "GLIBC_2.32 pthread_getattr_np F" >> $x
done
python3 scripts/move-symbol-to-libc.py --only-linux pthread_getattr_np
The private export of __pthread_getaffinity_np is no longer needed, but
the hidden alias still necessary so that the symbol can be exported with
versioned_symbol.
Reviewed-by: Carlos O'Donell <carlos@redhat.com >
Tested-by: Carlos O'Donell <carlos@redhat.com >
2020-05-20 20:27:49 +02:00
52302bc298
nptl: Move pthread_getaffinity_np into libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
The abilist updates were performed by:
git ls-files 'sysdeps/unix/sysv/linux/**/libc.abilist' \
| while read x ; do
echo "GLIBC_2.32 pthread_getaffinity_np F" >> $x
done
python3 scripts/move-symbol-to-libc.py pthread_getaffinity_np
Reviewed-by: Carlos O'Donell <carlos@redhat.com >
Tested-by: Carlos O'Donell <carlos@redhat.com >
2020-05-20 20:23:20 +02:00
1979819d68
nptl: Move pthread_attr_setaffinity_np into libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
The symbol did not previously exist in libc, so a new GLIBC_2.32
symbol is needed, to get correct dependency for binaries which
use the symbol but no longer link against libpthread.
The abilist updates were performed by:
git ls-files 'sysdeps/unix/sysv/linux/**/libc.abilist' \
| while read x ; do
echo "GLIBC_2.32 pthread_attr_setaffinity_np F" >> $x
done
python3 scripts/move-symbol-to-libc.py pthread_attr_setaffinity_np
Reviewed-by: Carlos O'Donell <carlos@redhat.com >
Tested-by: Carlos O'Donell <carlos@redhat.com >
2020-05-20 20:22:59 +02:00
c6663fee43
nptl: Move pthread_sigmask implementation to libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
A new symbol version is added on libc to force loading failure
instead of lazy binding one for newly binaries with old loaders.
Checked with a build against all affected ABIs.
2020-04-21 14:01:58 -03:00
f2323817dd
nptl: Move pthread_setschedparam implementation into libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2020-02-20 08:57:01 +01:00
d5074b30fe
nptl: Move pthread_getschedparam implementation into libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2020-02-20 08:57:01 +01:00
ad96df2cd9
nptl: Move pthread_cond_init implementation into libc
...
It is necessary to export __pthread_cond_init from libc because
the C11 condition variable needs it and is still left in libpthread.
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2020-02-20 08:57:01 +01:00
dc6cfdc934
nptl: Move pthread_cond_destroy implementation into libc
...
It is necessary to export __pthread_cond_destroy from libc because
the C11 condition variable needs it and is still left in libpthread.
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2020-02-20 08:57:01 +01:00
7da5c345a5
nptl: Move pthread_condattr_init implementation into libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2020-02-20 08:57:01 +01:00
249afce2e7
nptl: Move pthread_condattr_destroy implementation into libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2020-02-20 08:57:01 +01:00
dc260acd38
nptl: Move pthread_attr_setscope implementation into libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2020-02-20 08:57:01 +01:00
ed0a69b675
nptl: Move pthread_attr_getscope implementation into libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2020-02-20 08:57:01 +01:00
f0929a227b
nptl: Move pthread_attr_setschedpolicy implementation into libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2020-02-20 08:57:01 +01:00
ce197a6e0a
nptl: Move pthread_attr_getschedpolicy implementation into libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2020-02-20 08:57:01 +01:00
b633cdff2c
nptl: Move waitpid implementation to libc
...
Checked on x86_64-linux-gnu and powerpc64le-linux-gnu.
2019-12-19 16:11:09 -03:00
c97f9a5979
nptl: Move wait implementation to libc
...
Checked on x86_64-linux-gnu and powerpc64le-linux-gnu.
2019-12-19 16:11:09 -03:00
0487ebed22
nptl: Add more missing placeholder abi symbol from nanosleep move
...
This patch adds the missing __libpthread_version_placeholder for
GLIBC_2.2.6 version from the nanosleep implementation move from
libpthread to libc (79a547b162
).
It also fixes the wrong compat symbol definitions added by changing
back the version used on vfork check and remove the
__libpthread_version_placeholder added on some ABI (4f4bb489e0
).
The __libpthread_version_placeholder is also refactored to make it
simpler to add new compat_symbols by adding a new macro
compat_symbol_unique which uses the compiler extension __COUNTER__
to generate unique strong alias to be used with compat_symbol.
Checked with a updated-abi on the all affected abis of the nanosleep
move.
Change-Id: I347a4dbdc931bb42b359456932dd1e17aa4d4078
2019-12-09 15:04:56 -03:00
4f4bb489e0
nptl: Add missing placeholder abi symbol from nanosleep move
...
Adds the __libpthread_version_placeholder symbol with the same version
of nanosleep/__nanosleep that was removed by 79a547b162
and that
is not provided by other symbols.
2019-11-07 16:46:06 +00:00
79a547b162
nptl: Move nanosleep implementation to libc
...
Checked on x86_64-linux-gnu and powerpc64le-linux-gnu. I also checked
the libpthread.so .gnu.version_d entries for every ABI affected and
all of them contains the required versions (including for architectures
which exports __nanosleep with a different version).
Reviewed-by: Florian Weimer <fweimer@redhat.com >
2019-11-06 14:36:07 -03:00
69ca4b54c1
nptl: Add pthread_clockjoin_np
...
Introduce pthread_clockjoin_np as a version of pthread_timedjoin_np that
accepts a clockid_t parameter to indicate which clock the timeout should be
measured against. This mirrors the recently-added POSIX-proposed "clock"
wait functions.
Checked on x86_64-linux-gnu.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2019-11-01 11:23:43 -03:00
ca602c1536
nptl: Move pthread_attr_setschedparam implementation into libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2019-10-07 20:00:38 +02:00
0caab6638e
nptl: Move pthread_attr_getschedparam implementation into libc
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2019-10-07 15:49:48 +02:00
eaad14b56a
nptl: Move pthread_attr_setinheritsched implementation into libc.
...
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html >
2019-10-04 17:38:06 +02:00
9743c6272d
nptl: Move pthread_attr_getinheritsched implementation into libc
...
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2019-08-30 07:33:02 +02:00
ffced383cd
nptl: Move pthread_attr_setdetachstate implementation into libc
...
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2019-08-28 12:01:14 +02:00
1d714fd95d
nptl: Move pthread_attr_getdetachstate implementation into libc
...
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2019-08-16 22:44:44 +02:00
a635d756ff
nptl: Move pthread_attr_init implementation into libc
...
Both the original GLIB_2.0 version and the current GLIBC_2.1 version
need to be moved.
2019-08-15 19:12:21 +02:00
17e1347452
nptl: Remove pthread_self compatibility symbol from libpthread
...
The symbol is no longer needed because since glibc 2.30, the dynamic
loader continues searching for the symbol in libc.
2019-08-15 14:33:49 +02:00
fa57c30193
nptl: Move pthread_attr_destroy implementation into libc
2019-08-15 13:06:50 +02:00
dda373b00e
nptl: Move pthread_equal implementation into libc
2019-08-15 08:48:31 +02:00
9d20e22e46
nptl: Add POSIX-proposed pthread_mutex_clocklock
...
Add POSIX-proposed pthread_mutex_clocklock function that works like
pthread_mutex_timedlock but takes a clockid parameter to measure the
abstime parameter against.
* sysdeps/nptl/pthread.h: Add pthread_mutex_clocklock.
* nptl/DESIGN-systemtap-probes.txt: Likewise.
* nptl/pthread_mutex_timedlock.c
(__pthread_mutex_clocklock_common): Rename from
__pthread_mutex_timedlock and add clockid parameter. Pass this
parameter to lll_clocklock and lll_clocklock_elision in place of
CLOCK_REALTIME. (__pthread_mutex_clocklock): New function to add
LIBC_PROBE and validate clockid parameter before calling
__pthread_mutex_clocklock_common. (__pthread_mutex_timedlock): New
implementation to add LIBC_PROBE and calls
__pthread_mutex_clocklock_common passing CLOCK_REALTIME as the
clockid.
* nptl/Makefile: Add tst-mutex11.c.
* nptl/tst-abstime.c (th): Add tests for pthread_mutex_clocklock.
* nptl/tst-mutex11.c: New tests for passing invalid and unsupported
clockid parameters to pthread_mutex_clocklock.
* nptl/tst-mutex5.c (do_test_clock): Rename from do_test and take
clockid parameter to indicate which clock to be used. Call
pthread_mutex_timedlock or pthread_mutex_clocklock as appropriate.
(do_test): Call do_test_clock to separately test
pthread_mutex_timedlock, pthread_mutex_clocklock(CLOCK_REALTIME)
and pthread_mutex_clocklock(CLOCK_MONOTONIC).
* nptl/tst-mutex9.c: Likewise.
* nptl/Versions (GLIBC_2.30): Add pthread_mutex_clocklock.
* sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.30):
Likewise.
* sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.30):
Likewise.
* sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.30):
Likewise.
* sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.30):
Likewise.
* sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.30):
Likewise.
* sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.30):
Likewise.
* sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.30):
Likewise.
* sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/microblaze/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.30):
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.30):
Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
(GLIBC_2.30): Likewise.
* sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
(GLIBC_2.30): Likewise.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org >
2019-07-12 13:36:25 +00:00