[PATCH] misc: Turn sstk into a compat symbol
Florian Weimer
fw@deneb.enyo.de
Tue Apr 28 10:11:55 GMT 2020
* Joseph Myers:
> In general making something (in the user namespace, not necessarily in the
> case of a symbol starting _) into a compat symbol should get an entry in
> NEWS under "Deprecated and removed features, and other changes affecting
> compatibility:". We've done this even for functions that could not
> actually work at runtime (e.g. the wrappers for various obsolete Linux
> kernel syscalls removed from the kernel before the oldest kernel version
> supported by glibc at the time of making the symbols into compat symbols).
Thanks. Like this?
8<------------------------------------------------------------------8<
Subject: misc: Remove sstk from the autogenerated system call list
This change should not have an effect because the system call was
never defined. Also add the misssing attribute_compat_text_section
attribute to the sstk function (a minor optimization). Also update the
NEWS file to document the change.
Fixes commit 9cc93ba0973ad04ee26c515a1552afb85e73c6ba
("misc: Turn sstk into a compat symbol").
-----
NEWS | 4 ++++
misc/sstk.c | 2 +-
sysdeps/unix/syscalls.list | 1 -
3 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/NEWS b/NEWS
index 0e627b3405..834de03bda 100644
--- a/NEWS
+++ b/NEWS
@@ -26,6 +26,10 @@ Deprecated and removed features, and other changes affecting compatibility:
but always fails with ENOSYS. This reflects the removal of the system
call from all architectures, starting with Linux 5.5.
+* The sstk function is no longer available to newly linked binaries.
+ Its implementation always returned an array, and the function was not
+ declared in any header file.
+
Changes to build and runtime requirements:
[Add changes to build and runtime requirements here]
diff --git a/misc/sstk.c b/misc/sstk.c
index 0a2a967917..dda6f7b426 100644
--- a/misc/sstk.c
+++ b/misc/sstk.c
@@ -19,7 +19,7 @@
#include <shlib-compat.h>
#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_32)
-void *
+void * attribute_compat_text_section
sstk (int increment)
{
__set_errno (ENOSYS);
diff --git a/sysdeps/unix/syscalls.list b/sysdeps/unix/syscalls.list
index 01c4a0e6b1..e8f8718b04 100644
--- a/sysdeps/unix/syscalls.list
+++ b/sysdeps/unix/syscalls.list
@@ -78,7 +78,6 @@ sigaction - sigaction i:ipp __sigaction sigaction
sigsuspend - sigsuspend Ci:p sigsuspend
socket - socket i:iii __socket socket
socketpair - socketpair i:iiif socketpair
-sstk - sstk b:i sstk
statfs - statfs i:sp __statfs statfs
swapoff - swapoff i:s swapoff
swapon - swapon i:s swapon
More information about the Libc-alpha
mailing list