aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/sparc
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2021-06-25 10:30:36 +0200
committerFlorian Weimer <fweimer@redhat.com>2021-06-25 11:48:46 +0200
commit3df6dcc5c75b40d0ac0a9d22967da0a5a2b8df5c (patch)
tree7d411f73feedaca24ae047dca2f4892c412e246d /sysdeps/unix/sysv/linux/sparc
parentd12506b2dbbeb259468e0f06e87a98174e69a743 (diff)
downloadglibc-3df6dcc5c75b40d0ac0a9d22967da0a5a2b8df5c.tar
glibc-3df6dcc5c75b40d0ac0a9d22967da0a5a2b8df5c.tar.gz
glibc-3df6dcc5c75b40d0ac0a9d22967da0a5a2b8df5c.tar.bz2
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/sparc')
-rw-r--r--sysdeps/unix/sysv/linux/sparc/Versions11
-rw-r--r--sysdeps/unix/sysv/linux/sparc/aio_cancel.c22
-rw-r--r--sysdeps/unix/sysv/linux/sparc/librt-compat.c24
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/librt.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/librt.abilist5
7 files changed, 57 insertions, 22 deletions
diff --git a/sysdeps/unix/sysv/linux/sparc/Versions b/sysdeps/unix/sysv/linux/sparc/Versions
index f1027603a4..f127bdf0b8 100644
--- a/sysdeps/unix/sysv/linux/sparc/Versions
+++ b/sysdeps/unix/sysv/linux/sparc/Versions
@@ -6,7 +6,12 @@ libc {
_sys_errlist; sys_errlist; _sys_nerr; sys_nerr;
}
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.
@@ -29,10 +34,8 @@ libc {
__vdso_clock_gettime;
}
}
-
librt {
GLIBC_2.3 {
- # AIO functions.
- aio_cancel; aio_cancel64;
+ __librt_version_placeholder;
}
}
diff --git a/sysdeps/unix/sysv/linux/sparc/aio_cancel.c b/sysdeps/unix/sysv/linux/sparc/aio_cancel.c
index 9f69b080ed..6e4352a9a4 100644
--- a/sysdeps/unix/sysv/linux/sparc/aio_cancel.c
+++ b/sysdeps/unix/sysv/linux/sparc/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/sparc/librt-compat.c b/sysdeps/unix/sysv/linux/sparc/librt-compat.c
new file mode 100644
index 0000000000..a3862ba127
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/sparc/librt-compat.c
@@ -0,0 +1,24 @@
+/* Placeholder definitions to pull in removed symbol versions. sparc 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/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
index 937efaaba4..82439ec5c4 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
@@ -1474,6 +1474,8 @@ GLIBC_2.1 _sys_errlist D 0x1fc
GLIBC_2.1 _sys_nerr D 0x4
GLIBC_2.1 _sys_siglist D 0x100
GLIBC_2.1 addseverity 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
@@ -2165,6 +2167,8 @@ GLIBC_2.3 __uselocale F
GLIBC_2.3 __wcsftime_l F
GLIBC_2.3 _sys_errlist D 0x200
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
@@ -2467,6 +2471,8 @@ GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 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/sparc/sparc32/librt.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/librt.abilist
index e4e4569d81..61cc93c180 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/librt.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/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.4 mq_close F
GLIBC_2.3.4 mq_getattr F
GLIBC_2.3.4 mq_notify F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
index 47f96b1480..8868399fce 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
@@ -7,6 +7,8 @@ GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
+GLIBC_2.1 aio_cancel F
+GLIBC_2.1 aio_cancel64 F
GLIBC_2.1 aio_init F
GLIBC_2.1 dlopen F
GLIBC_2.1 dlvsym F
@@ -2091,6 +2093,8 @@ GLIBC_2.3 __uselocale F
GLIBC_2.3 __wcsftime_l F
GLIBC_2.3 _sys_errlist D 0x400
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
@@ -2303,6 +2307,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/sparc/sparc64/librt.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/librt.abilist
index 94f5ca8b6f..c7e49f9a98 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/librt.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/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