diff --git a/xfs_io-fix-copy_file_range-symbol-name-collision.patch b/xfs_io-fix-copy_file_range-symbol-name-collision.patch new file mode 100644 index 0000000..7ff9ecf --- /dev/null +++ b/xfs_io-fix-copy_file_range-symbol-name-collision.patch @@ -0,0 +1,55 @@ +From: Darrick J. Wong +Subject: xfs_io: fix copy_file_range symbol name collision +References: bsc#1079756 +Patch-mainline: https://www.spinics.net/lists/linux-xfs/msg15553.html + +glibc 2.27 has a copy_file_range wrapper, so we need to change our +internal function out of the way to avoid compiler warnings. + +Reported-by: fredrik@crux.nu +Signed-off-by: Darrick J. Wong +Acked-by: Jeff Mahoney +--- + io/copy_file_range.c | 11 ++++++++--- + 1 file changed, 8 insertions(+), 3 deletions(-) + +diff --git a/io/copy_file_range.c b/io/copy_file_range.c +index d1dfc5a..99fba20 100644 +--- a/io/copy_file_range.c ++++ b/io/copy_file_range.c +@@ -42,13 +42,18 @@ copy_range_help(void) + ")); + } + ++/* ++ * Issue a raw copy_file_range syscall; for our test program we don't want the ++ * glibc buffered copy fallback. ++ */ + static loff_t +-copy_file_range(int fd, loff_t *src, loff_t *dst, size_t len) ++copy_file_range_cmd(int fd, loff_t *src, loff_t *dst, size_t len) + { + loff_t ret; + + do { +- ret = syscall(__NR_copy_file_range, fd, src, file->fd, dst, len, 0); ++ ret = syscall(__NR_copy_file_range, fd, src, file->fd, dst, ++ len, 0); + if (ret == -1) { + perror("copy_range"); + return errno; +@@ -130,7 +135,7 @@ copy_range_f(int argc, char **argv) + copy_dst_truncate(); + } + +- ret = copy_file_range(fd, &src, &dst, len); ++ ret = copy_file_range_cmd(fd, &src, &dst, len); + close(fd); + return ret; + } +-- +To unsubscribe from this list: send the line "unsubscribe linux-xfs" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html + + diff --git a/xfsprogs.changes b/xfsprogs.changes index 0a3f02c..77bc145 100644 --- a/xfsprogs.changes +++ b/xfsprogs.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Wed Feb 7 14:24:01 UTC 2018 - jeffm@suse.com + +- xfs_io: fix copy_file_range symbol name collision (bsc#1079756). +- Added xfs_io-fix-copy_file_range-symbol-name-collision.patch + ------------------------------------------------------------------- Tue Dec 19 17:12:09 UTC 2017 - lurodriguez@suse.com diff --git a/xfsprogs.spec b/xfsprogs.spec index dd6bbac..b2c3d35 100644 --- a/xfsprogs.spec +++ b/xfsprogs.spec @@ -1,7 +1,7 @@ # # spec file for package xfsprogs # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -31,6 +31,7 @@ Source2: %{name}.keyring Source3: module-setup.sh.in Source4: dracut-fsck-help.txt Patch0: xfsprogs-docdir.diff +Patch1: xfs_io-fix-copy_file_range-symbol-name-collision.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: libblkid-devel @@ -78,6 +79,7 @@ want to install xfsprogs. %setup -q %if 0%{?suse_version} %patch0 -p1 +%patch1 -p1 %endif %build