From 39035df71c37d474be2cb2a0fad8d70da095c68b Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Thu, 7 Nov 2019 14:55:10 -0800 Subject: xfsprogs: Fix compilation with newer musl Backported upstream patch. Signed-off-by: Rosen Penev --- .../xfsprogs/patches/140-copy-file-range.patch | 48 ++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 package/utils/xfsprogs/patches/140-copy-file-range.patch (limited to 'package/utils/xfsprogs/patches/140-copy-file-range.patch') diff --git a/package/utils/xfsprogs/patches/140-copy-file-range.patch b/package/utils/xfsprogs/patches/140-copy-file-range.patch new file mode 100644 index 0000000000..076d5c95da --- /dev/null +++ b/package/utils/xfsprogs/patches/140-copy-file-range.patch @@ -0,0 +1,48 @@ +From 8041435de7ed028a27ecca64302945ad455c69a6 Mon Sep 17 00:00:00 2001 +From: "Darrick J. Wong" +Date: Mon, 5 Feb 2018 14:38:02 -0600 +Subject: [PATCH] xfs_io: fix copy_file_range symbol name collision + +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 +Reviewed-by: Eric Sandeen +Signed-off-by: Eric Sandeen +--- + io/copy_file_range.c | 11 ++++++++--- + 1 file changed, 8 insertions(+), 3 deletions(-) + +--- 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; + } -- cgit v1.2.3