about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-05-19 10:33:58 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-06-15 16:03:37 -0300
commit48d966eb359b559f292b7f6896eff7746e5af390 (patch)
treea06ecd57c8dfeff1e369f30d1cdad7b1e32946a1
parent244361ebaec57a6fbb9998bfa5ec71ee8d88f3e8 (diff)
downloadglibc-48d966eb359b559f292b7f6896eff7746e5af390.tar.gz
glibc-48d966eb359b559f292b7f6896eff7746e5af390.tar.xz
glibc-48d966eb359b559f292b7f6896eff7746e5af390.zip
linux: Consolidate sync_file_range implementation
This patch consolidates Linux sync_file_range at default
sysdeps/unix/sysv/linux/sync_file_range.c implementation.  It also
moves the rules flags from generic io/Makefile to Linux one due the
fact it is a Linux-only symbol.

Checked on i686-linux-gnu and x86_64-linux-gnu.

	* io/Makefile (CFLAGS-sync_file_range.c): Remove rule.
	* sysdeps/unix/sysv/linux/Makefile (CFLAGS-sync_file_range.c): New
	rule.
	* sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Remove
	sync_file_range.
-rw-r--r--ChangeLog6
-rw-r--r--io/Makefile1
-rw-r--r--sysdeps/unix/sysv/linux/Makefile1
-rw-r--r--sysdeps/unix/sysv/linux/wordsize-64/syscalls.list1
4 files changed, 7 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 8fb6aaae0c..3255a1fdf2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2017-06-15  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
 
+	* io/Makefile (CFLAGS-sync_file_range.c): Remove rule.
+	* sysdeps/unix/sysv/linux/Makefile (CFLAGS-sync_file_range.c): New
+	rule.
+	* sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Remove
+	sync_file_range.
+
 	 * support/support_test_main.c (support_test_main):  Use optstring
 	 member for option string in getopt_long.
 	 * support/test-driver.c: Add comment about CMDLINE_OPTSTRING.
diff --git a/io/Makefile b/io/Makefile
index 16365e581a..2f26bf56db 100644
--- a/io/Makefile
+++ b/io/Makefile
@@ -99,7 +99,6 @@ CFLAGS-posix_fallocate.c = -fexceptions
 CFLAGS-posix_fallocate64.c = -fexceptions
 CFLAGS-fallocate.c = -fexceptions
 CFLAGS-fallocate64.c = -fexceptions
-CFLAGS-sync_file_range.c = -fexceptions
 CFLAGS-read.c = -fexceptions
 CFLAGS-write.c = -fexceptions
 
diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile
index 99b3f9d346..1a170c29d6 100644
--- a/sysdeps/unix/sysv/linux/Makefile
+++ b/sysdeps/unix/sysv/linux/Makefile
@@ -25,6 +25,7 @@ CFLAGS-tee.c = -fexceptions -fasynchronous-unwind-tables
 CFLAGS-vmsplice.c = -fexceptions -fasynchronous-unwind-tables
 CFLAGS-splice.c = -fexceptions -fasynchronous-unwind-tables
 CFLAGS-open_by_handle_at.c = -fexceptions -fasynchronous-unwind-tables
+CFLAGS-sync_file_range.c = -fexceptions -fasynchronous-unwind-tables
 CFLAGS-tst-writev.c += "-DARTIFICIAL_LIMIT=(0x80000000-sysconf(_SC_PAGESIZE))"
 
 # Note that bits/mman-linux.h is listed here though the file lives in the
diff --git a/sysdeps/unix/sysv/linux/wordsize-64/syscalls.list b/sysdeps/unix/sysv/linux/wordsize-64/syscalls.list
index 5c78677d77..4bb7ebfacb 100644
--- a/sysdeps/unix/sysv/linux/wordsize-64/syscalls.list
+++ b/sysdeps/unix/sysv/linux/wordsize-64/syscalls.list
@@ -4,7 +4,6 @@ fstatfs		-	fstatfs		i:ip	__fstatfs	fstatfs fstatfs64 __fstatfs64
 statfs		-	statfs		i:sp	__statfs	statfs statfs64
 readahead	-	readahead	i:iii	__readahead	readahead
 sendfile	-	sendfile	i:iipi	sendfile	sendfile64
-sync_file_range	-	sync_file_range	Ci:iiii	sync_file_range
 prlimit		EXTRA	prlimit64	i:iipp	prlimit		prlimit64
 
 fanotify_mark	EXTRA	fanotify_mark	i:iiiis	fanotify_mark