diff options
author | Florian Weimer <fweimer@redhat.com> | 2021-06-25 10:30:36 +0200 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2021-06-25 11:48:46 +0200 |
commit | 3df6dcc5c75b40d0ac0a9d22967da0a5a2b8df5c (patch) | |
tree | 7d411f73feedaca24ae047dca2f4892c412e246d /sysdeps/unix/sysv/linux/alpha | |
parent | d12506b2dbbeb259468e0f06e87a98174e69a743 (diff) | |
download | glibc-3df6dcc5c75b40d0ac0a9d22967da0a5a2b8df5c.tar.gz glibc-3df6dcc5c75b40d0ac0a9d22967da0a5a2b8df5c.tar.xz glibc-3df6dcc5c75b40d0ac0a9d22967da0a5a2b8df5c.zip |
Linux: Move aio_cancel, aio_cancel64 into libc
The symbols were moved using scripts/move-symbol-to-libc.py. A version placeholder symbol is needed on alpha and sparc because of the additional symbols formerly at version GLIBC_2.3. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>:
Diffstat (limited to 'sysdeps/unix/sysv/linux/alpha')
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/Versions | 13 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/aio_cancel.c | 22 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/libc.abilist | 6 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/librt-compat.c | 24 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/librt.abilist | 5 |
5 files changed, 53 insertions, 17 deletions
diff --git a/sysdeps/unix/sysv/linux/alpha/Versions b/sysdeps/unix/sysv/linux/alpha/Versions index b113cb60e4..db6116a890 100644 --- a/sysdeps/unix/sysv/linux/alpha/Versions +++ b/sysdeps/unix/sysv/linux/alpha/Versions @@ -62,7 +62,12 @@ libc { wordexp; } GLIBC_2.3 { - _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + _sys_errlist; + _sys_nerr; + aio_cancel64; + aio_cancel; + sys_errlist; + sys_nerr; } GLIBC_2.3.3 { # Changed PTHREAD_STACK_MIN. @@ -81,6 +86,9 @@ libc { GLIBC_2.27 { getrlimit; setrlimit; getrlimit64; setrlimit64; } + GLIBC_2.34 { + aio_cancel64; + } GLIBC_PRIVATE { __libc_alpha_cache_shape; } @@ -92,8 +100,7 @@ ld { } librt { GLIBC_2.3 { - # AIO functions. - aio_cancel; aio_cancel64; + __librt_version_placeholder; } GLIBC_2.3.3 { # Changed timer_t. diff --git a/sysdeps/unix/sysv/linux/alpha/aio_cancel.c b/sysdeps/unix/sysv/linux/alpha/aio_cancel.c index 9f69b080ed..6e4352a9a4 100644 --- a/sysdeps/unix/sysv/linux/alpha/aio_cancel.c +++ b/sysdeps/unix/sysv/linux/alpha/aio_cancel.c @@ -8,26 +8,28 @@ extern __typeof (aio_cancel) __new_aio_cancel; extern __typeof (aio_cancel) __old_aio_cancel; -#define aio_cancel __new_aio_cancel +#define __aio_cancel __new_aio_cancel #include <rt/aio_cancel.c> -#undef aio_cancel -strong_alias (__new_aio_cancel, __new_aio_cancel64); -versioned_symbol (librt, __new_aio_cancel, aio_cancel, GLIBC_2_3); -versioned_symbol (librt, __new_aio_cancel64, aio_cancel64, GLIBC_2_3); +#undef __aio_cancel +versioned_symbol (libc, __new_aio_cancel, aio_cancel, GLIBC_2_34); +versioned_symbol (libc, __new_aio_cancel, aio_cancel64, GLIBC_2_34); +#if OTHER_SHLIB_COMPAT (librt, GLIBC_2_3, GLIBC_2_34) +compat_symbol (librt, __new_aio_cancel, aio_cancel, GLIBC_2_3); +compat_symbol (librt, __new_aio_cancel, aio_cancel64, GLIBC_2_3); +#endif -#if SHLIB_COMPAT (librt, GLIBC_2_1, GLIBC_2_3) +#if OTHER_SHLIB_COMPAT (librt, GLIBC_2_1, GLIBC_2_3) #undef ECANCELED -#define aio_cancel __old_aio_cancel +#define __aio_cancel __old_aio_cancel #define ECANCELED 125 #include <rt/aio_cancel.c> -#undef aio_cancel -strong_alias (__old_aio_cancel, __old_aio_cancel64); +#undef __aio_cancel compat_symbol (librt, __old_aio_cancel, aio_cancel, GLIBC_2_1); -compat_symbol (librt, __old_aio_cancel64, aio_cancel64, GLIBC_2_1); +compat_symbol (librt, __old_aio_cancel, aio_cancel64, GLIBC_2_1); #endif diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist index 5f3bebef8c..0d621c3185 100644 --- a/sysdeps/unix/sysv/linux/alpha/libc.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist @@ -1502,6 +1502,8 @@ GLIBC_2.1 _sys_siglist D 0x200 GLIBC_2.1 addseverity F GLIBC_2.1 adjtime F GLIBC_2.1 adjtimex F +GLIBC_2.1 aio_cancel F +GLIBC_2.1 aio_cancel64 F GLIBC_2.1 aio_init F GLIBC_2.1 alphasort64 F GLIBC_2.1 argp_err_exit_status D 0x4 @@ -2202,6 +2204,8 @@ GLIBC_2.3 __uselocale F GLIBC_2.3 __wcsftime_l F GLIBC_2.3 _sys_errlist D 0x420 GLIBC_2.3 _sys_nerr D 0x4 +GLIBC_2.3 aio_cancel F +GLIBC_2.3 aio_cancel64 F GLIBC_2.3 duplocale F GLIBC_2.3 fgetxattr F GLIBC_2.3 flistxattr F @@ -2442,6 +2446,8 @@ GLIBC_2.34 __pthread_unregister_cancel_restore F GLIBC_2.34 __pthread_unwind_next F GLIBC_2.34 _pthread_cleanup_pop F GLIBC_2.34 _pthread_cleanup_push F +GLIBC_2.34 aio_cancel F +GLIBC_2.34 aio_cancel64 F GLIBC_2.34 aio_init F GLIBC_2.34 call_once F GLIBC_2.34 cnd_broadcast F diff --git a/sysdeps/unix/sysv/linux/alpha/librt-compat.c b/sysdeps/unix/sysv/linux/alpha/librt-compat.c new file mode 100644 index 0000000000..96e92e1637 --- /dev/null +++ b/sysdeps/unix/sysv/linux/alpha/librt-compat.c @@ -0,0 +1,24 @@ +/* Placeholder definitions to pull in removed symbol versions. alpha version. + Copyright (C) 2021 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + 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 <rt/librt-compat.c> + +#if SHLIB_COMPAT (librt, GLIBC_2_3, GLIBC_2_34) +compat_symbol (librt, __librt_version_placeholder_1, + __librt_version_placeholder, GLIBC_2_3); +#endif diff --git a/sysdeps/unix/sysv/linux/alpha/librt.abilist b/sysdeps/unix/sysv/linux/alpha/librt.abilist index 94f5ca8b6f..c7e49f9a98 100644 --- a/sysdeps/unix/sysv/linux/alpha/librt.abilist +++ b/sysdeps/unix/sysv/linux/alpha/librt.abilist @@ -1,5 +1,3 @@ -GLIBC_2.1 aio_cancel F -GLIBC_2.1 aio_cancel64 F GLIBC_2.1 aio_error F GLIBC_2.1 aio_error64 F GLIBC_2.1 aio_fsync F @@ -19,8 +17,7 @@ GLIBC_2.2 timer_delete F GLIBC_2.2 timer_getoverrun F GLIBC_2.2 timer_gettime F GLIBC_2.2 timer_settime F -GLIBC_2.3 aio_cancel F -GLIBC_2.3 aio_cancel64 F +GLIBC_2.3 __librt_version_placeholder F GLIBC_2.3.3 timer_create F GLIBC_2.3.3 timer_delete F GLIBC_2.3.3 timer_getoverrun F |