about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2018-05-18 16:50:44 +0000
committerJoseph Myers <joseph@codesourcery.com>2018-05-18 16:50:44 +0000
commitebc129fd17e8110eb76fb5ebdbb2dc395507ceeb (patch)
tree95fc5dda91a2815cf5d6c87afeed4c6ab2496869
parent78274dc8ceb21bb7efd8baef29e1f00031b9c1c6 (diff)
downloadglibc-ebc129fd17e8110eb76fb5ebdbb2dc395507ceeb.tar.gz
glibc-ebc129fd17e8110eb76fb5ebdbb2dc395507ceeb.tar.xz
glibc-ebc129fd17e8110eb76fb5ebdbb2dc395507ceeb.zip
Obsolete nfsservctl.
The Linux nfsservctl syscall was removed in Linux 3.1.  Since the
minimum kernel version for use with glibc is 3.2, the glibc wrapper
for this syscall can no longer usefully be called.  This patch makes
it into a compat symbol, not provided at all for static linking or new
ports.  (It was already the case that there was no header declaration
of this function.)

Tested for x86_64.

	* sysdeps/unix/sysv/linux/syscalls.list (nfsservctl): Make into a
	compat symbol, disabled for minimum symbol version GLIBC_2.28 and
	later.
-rw-r--r--ChangeLog4
-rw-r--r--NEWS5
-rw-r--r--sysdeps/unix/sysv/linux/syscalls.list2
3 files changed, 10 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 4a2d9787c4..62308b5aee 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2018-05-18  Joseph Myers  <joseph@codesourcery.com>
 
+	* sysdeps/unix/sysv/linux/syscalls.list (nfsservctl): Make into a
+	compat symbol, disabled for minimum symbol version GLIBC_2.28 and
+	later.
+
 	[BZ #22639]
 	* time/tzset.c (SECSPERDAY): Cast to time_t.
 	* time/tst-y2039.c: New file.
diff --git a/NEWS b/NEWS
index 4899a0acab..bade9e4765 100644
--- a/NEWS
+++ b/NEWS
@@ -69,6 +69,11 @@ Deprecated and removed features, and other changes affecting compatibility:
   binaries; the headers <ustat.h> and <sys/ustat.h> have been removed.  This
   function has been deprecated in favor of fstatfs and statfs.
 
+* The obsolete function nfsservctl is no longer available to newly linked
+  binaries.  This function was specific to systems using the Linux kernel
+  and could not usefully be used with the GNU C Library on systems with
+  version 3.1 or later of the Linux kernel.
+
 Changes to build and runtime requirements:
 
   [Add changes to build and runtime requirements here]
diff --git a/sysdeps/unix/sysv/linux/syscalls.list b/sysdeps/unix/sysv/linux/syscalls.list
index e3dfd0c8db..e24ea29e35 100644
--- a/sysdeps/unix/sysv/linux/syscalls.list
+++ b/sysdeps/unix/sysv/linux/syscalls.list
@@ -41,7 +41,7 @@ mount		EXTRA	mount		i:sssip	__mount	mount
 mremap		EXTRA	mremap		b:ainip	__mremap	mremap
 munlock		-	munlock		i:ai	munlock
 munlockall	-	munlockall	i:	munlockall
-nfsservctl	EXTRA	nfsservctl	i:ipp	nfsservctl
+nfsservctl	EXTRA	nfsservctl	i:ipp	__compat_nfsservctl	nfsservctl@GLIBC_2.0:GLIBC_2.28
 pipe		-	pipe		i:f	__pipe		pipe
 pipe2		-	pipe2		i:fi	__pipe2		pipe2
 pivot_root	EXTRA	pivot_root	i:ss	pivot_root