aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv
AgeCommit message (Collapse)Author
2021-05-03nptl: Move thrd_exit into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. The __pthread_exit@@GLIBC_PRIVATE symbol is no longer needed after this change, so remove it. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03nptl: Move mtx_unlock into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. __pthread_mutex_unlock@GLIBC_2.34 is not removed in this commit because it is still used from nptl/nptl-init.c. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03nptl: Move mtx_trylock into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. The __pthread_mutex_trylock@@GLIBC_2.34 symbol version is no longer needed because the call is now internal to libc, so remove it with this commit. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03nptl: Move mtx_timedlock into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. The __pthread_mutex_timedlock@@GLIBC_PRIVATE export is no longer needed, so it is removed with this commit. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03nptl: Move mtx_lock into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. __pthread_mutex_lock@GLIBC_2.34 is not removed in this commit because it is still used from nptl/nptl-init.c. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03nptl: Move mtx_init into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. The calls to __pthread_mutex_init, __pthread_mutexattr_init, __pthread_mutexattr_settype are now private and no longer need to be exported. This allows the removal of the newly added GLIBC_2.34 symbol versions for those functions. Also clean up some weak declarations in <libc-lockP.h> for these functions. They are not needed and potentially incorrect for static linking of mtx_init. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03nptl: Move mtx_destroy into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. The __pthread_mutex_destroy@@GLIBC_2.34 symbol is no longer neded because this commit makes __pthread_mutex_destroy@GLIBC_2.0 a compatibility symbol, so remove the new symbol version. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03nptl: Move cnd_wait into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. The __pthread_cond_wait@@GLIBC_PRIVATE symbol is no longer neded, so remove that as well. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03nptl: Move cnd_timedwait into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. The __pthread_cond_timedwait@@GLIBC_PRIVATE symbol is no longer neded, so remove that as well. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03nptl: Move cnd_signal into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. The __pthread_cond_signal@@GLIBC_PRIVATE symbol is no longer neded, so remove that as well. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03nptl: Move cnd_init into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. The __pthread_cond_init@@GLIBC_PRIVATE symbol is no longer neded, so remove that as well. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03nptl: Move cnd_destroy into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. The __pthread_cond_destroy@@GLIBC_PRIVATE symbol is no longer neded, so remove that as well. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03nptl: Move cnd_broadcast into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. The __pthread_cond_broadcast@@GLIBC_PRIVATE symbol is no longer neded, so remove that as well. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03nptl: Move call_once into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. This change also turns __pthread_once into a compatibility symbol because after the call_once move, an internal call to __pthread_once can be used. This an adjustment to __libc_once: Outside libc (e.g., in nscd), it has to call pthread_once. With __pthread_once as a compatibility symbol, it is no longer to add a new GLIBC_2.34 version after the move from libpthread, and this commit removes the new __pthread_once@@GLIBC_2.34 version. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-04-29Update kernel version to 5.12 in tst-mman-consts.py.Joseph Myers
This patch updates the kernel version in the test tst-mman-consts.py to 5.12. (There are no new MAP_* constants covered by this test in 5.12 that need any other header changes.) Tested with build-many-glibcs.py.
2021-04-28Update syscall lists for Linux 5.12.Joseph Myers
Linux 5.12 has one new syscall, mount_setattr. Update syscall-names.list and regenerate the arch-syscall.h headers with build-many-glibcs.py update-syscalls. Tested with build-many-glibcs.py.
2021-04-23nptl: Remove __h_errno_location from libpthreadFlorian Weimer
The existing definition in libc will be used instead. The symbol was moved (that is, removed) using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Remove __res_state from libpthreadFlorian Weimer
The existing definition in libc will be used instead. The symbol was moved (that is, removed) using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_spin_trylock into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_spin_lock into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_spin_init, Move pthread_spin_unlock into libcFlorian Weimer
For some architectures, the two functions are aliased, so these symbols need to be moved at the same time. The symbols were moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_spin_destroy into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_condattr_setpshared into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_condattr_setclock into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_condattr_getpshared into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_condattr_getclock into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutexattr_settype, __pthread_mutexattr_settype into libcFlorian Weimer
And pthread_mutexattr_setkind_np as a compatibility symbol. __pthread_mutexattr_settype is used in mtx_init from libpthread, so this commit adds a GLIBC_2.34 symbol version for it. The symbols were moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutexattr_setrobust into libcFlorian Weimer
And pthread_mutexattr_getrobust_np as a compat symbol. The symbols were moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutexattr_setpshared into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutexattr_setprotocol into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutexattr_setprioceiling into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutexattr_init, __pthread_mutexattr_init into libcFlorian Weimer
__pthread_mutexattr_init cannot be be made a compat symbol because it is used in mtx_init, which is still in libpthread. The symbols were moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutexattr_gettype into libcFlorian Weimer
And pthread_mutexattr_getkind_np as a compatibility symbol. (There is no declaration in <pthread.h>, so there is no need to add an alias or a deprecation warning there.) The symbols were moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutexattr_getrobust into libcFlorian Weimer
And pthread_mutexattr_getrobust_np as a compat symbol. The symbols were moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutexattr_getpshared into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutexattr_getprotocol into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutexattr_getprioceiling into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutexattr_destroy into libcFlorian Weimer
And __pthread_mutexattr_destroy as a compat symbol (so no GLIBC_2.34 symbol version is added for it). The symbols were moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutex_trylock, __pthread_mutex_trylock into libcFlorian Weimer
The symbols were moved using scripts/move-symbol-to-libc.py. __pthread_mutex_trylock is used to implement mtx_timedlock, which still resides in libpthread, so add a GLIBC_2.34 version for it, to match the existing GLIBC_2.0 version.
2021-04-23nptl: Move pthread_mutex_timedlock, pthread_mutex_clocklock to libcFlorian Weimer
The symbols were moved using scripts/move-symbol-to-libc.py. The symbol aliasing follows pthread_cond_timedwait et al. Missing hidden prototypes had to be added to nptl/pthreadP.h for consistency.
2021-04-23nptl: Move pthread_mutex_setprioceiling into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-23nptl: Move pthread_mutex_getprioceiling into libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py.
2021-04-22nptl: Move pthread_kill_other_threads_np compatibility symbol into libcFlorian Weimer
And stop including the function for new architectures.
2021-04-22nptl: Move pthread_atfork compatibility symbol to libcFlorian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. There is no new symbol version because of the compatibility symbol status. The __pthread_atfork reference in nptl/Versions was unused.
2021-04-21nptl: Move setxid broadcast implementation into libcFlorian Weimer
The signal handler is exported as __nptl_setxid_sighandler, so that the libpthread initialization code can install it. This is sufficient for now because it is guarantueed to happen before the first pthread_create call.
2021-04-21nptl: Move core condition variable functions into libcFlorian Weimer
Onl pthread_cond_clockwait did not have a forwarder, so it needs a new symbol version. Some complications arise due to the need to supply hidden aliases, GLIBC_PRIVATE exports (for the C11 condition variable implementation that still remains in libpthread) and 64-bit time_t stubs. pthread_cond_broadcast, pthread_cond_signal, pthread_cond_timedwait, pthread_cond_wait, pthread_cond_clockwait have been moved using scripts/move-symbol-to-libc.py. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
2021-04-21nptl: Move core mutex functions into libcFlorian Weimer
This is complicated because of a second compilation of nptl/pthread_mutex_lock.c via nptl/pthread_mutex_cond_lock.c. PTHREAD_MUTEX_VERSIONS is introduced to suppress symbol versions in that case. The symbols __pthread_mutex_lock, __pthread_mutex_unlock, __pthread_mutex_init, __pthread_mutex_destroy, pthread_mutex_lock, pthread_mutex_unlock, pthread_mutex_init, pthread_mutex_destroy have been moved using scripts/move-symbol-to-libc.py. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
2021-04-21x86: Remove low-level lock optimizationFlorian Weimer
The current approach is to do this optimizations at a higher level, in generic code, so that single-threaded cases can be specifically targeted. Furthermore, using IS_IN (libc) as a compile-time indicator that all locks are private is no longer correct once process-shared lock implementations are moved into libc. The generic <lowlevellock.h> is not compatible with assembler code (obviously), so it's necessary to remove two long-unused #includes. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
2021-04-21nptl: Move rwlock functions with forwarders into libcFlorian Weimer
The forwarders were only used internally, so new symbol versions are needed. All symbols are moved at once because the forwarders are no-ops if libpthread is not loaded, leading to inconsistencies in case of a partial migration. The symbols __pthread_rwlock_rdlock, __pthread_rwlock_unlock, __pthread_rwlock_wrlock, pthread_rwlock_rdlock, pthread_rwlock_unlock, pthread_rwlock_wrlock have been moved using scripts/move-symbol-to-libc.py. The __ symbol variants are turned into compat symbols, which is why they do not receive a GLIBC_2.34 version.
2021-04-21nptl: Move pthread_key_delete into libc.Florian Weimer
The symbol was moved using scripts/move-symbol-to-libc.py. tss_delete (still in libpthread) uses the __pthread_key_create alias, so that is now exported under GLIBC_PRIVATE.