- xfs_io: fix copy_file_range symbol name collision (bsc#1079756).

- Added xfs_io-fix-copy_file_range-symbol-name-collision.patch

OBS-URL: https://build.opensuse.org/package/show/filesystems/xfsprogs?expand=0&rev=59
This commit is contained in:
Jeff Mahoney 2018-02-07 14:25:03 +00:00 committed by Git OBS Bridge
parent 1d7db4622e
commit 7e89b4c23d
3 changed files with 64 additions and 1 deletions

View File

@ -0,0 +1,55 @@
From: Darrick J. Wong <darrick.wong@oracle.com>
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 <darrick.wong@oracle.com>
Acked-by: Jeff Mahoney <jeffm@suse.com>
---
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

View File

@ -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 Tue Dec 19 17:12:09 UTC 2017 - lurodriguez@suse.com

View File

@ -1,7 +1,7 @@
# #
# spec file for package xfsprogs # 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 # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -31,6 +31,7 @@ Source2: %{name}.keyring
Source3: module-setup.sh.in Source3: module-setup.sh.in
Source4: dracut-fsck-help.txt Source4: dracut-fsck-help.txt
Patch0: xfsprogs-docdir.diff Patch0: xfsprogs-docdir.diff
Patch1: xfs_io-fix-copy_file_range-symbol-name-collision.patch
BuildRequires: autoconf BuildRequires: autoconf
BuildRequires: automake BuildRequires: automake
BuildRequires: libblkid-devel BuildRequires: libblkid-devel
@ -78,6 +79,7 @@ want to install xfsprogs.
%setup -q %setup -q
%if 0%{?suse_version} %if 0%{?suse_version}
%patch0 -p1 %patch0 -p1
%patch1 -p1
%endif %endif
%build %build