From 15230756d31d404881fea1edbbe4bd7378066163 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Wed, 4 Jan 2017 19:46:35 +0000 Subject: copy_file_range: use correct syscall numbers on x86/x86-64 I had a recent linux-libc-dev installed with my kernel, so I did not notice these mistakes until I installed only an updated kernel without the headers. The old number (285) is the generic base syscall number. --- ext/sleepy_penguin/cfr.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/ext/sleepy_penguin/cfr.c b/ext/sleepy_penguin/cfr.c index ea17f82..e90d959 100644 --- a/ext/sleepy_penguin/cfr.c +++ b/ext/sleepy_penguin/cfr.c @@ -4,9 +4,12 @@ #ifndef HAVE_COPY_FILE_RANGE # include -# if !defined(__NR_copy_file_range) && \ - (defined(__x86_64__) || defined(__i386__)) -# define __NR_copy_file_range 285 +# if !defined(__NR_copy_file_range) +# if defined(__x86_64__) +# define __NR_copy_file_range 326 +# elif defined(__i386__) +# define __NR_copy_file_range 377 +# endif /* supported arches */ # endif /* __NR_copy_file_range */ #endif -- cgit v1.2.3-24-ge0c7