From c4c30c43eba9c7af025496f23bb5936f0e9f0b76 Mon Sep 17 00:00:00 2001 From: Lina Zhao Date: Thu, 14 Oct 2010 16:21:12 +0800 Subject: [PATCH] arm use __NR_sync_file_range2 not __NR_sync_file_range for system call. So test react "System doesn't support" for arm. but actually arm use __NR_sync_file_range2 to support the system call. signed-off-by: Lina Zhao --- .../syscalls/sync_file_range/sync_file_range01.c | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) diff --git a/testcases/kernel/syscalls/sync_file_range/sync_file_range01.c b/testcases/kernel/syscalls/sync_file_range/sync_file_range01.c index 53619b5..be82de8 100644 --- a/testcases/kernel/syscalls/sync_file_range/sync_file_range01.c +++ b/testcases/kernel/syscalls/sync_file_range/sync_file_range01.c @@ -96,7 +96,7 @@ #include "usctest.h" #include "linux_syscall_numbers.h" -#if defined(__powerpc__) || defined(__powerpc64__) +#if defined(__powerpc__) || defined(__powerpc64__) || defined(__arm__) #ifndef __NR_sync_file_range2 #define __NR_sync_file_range2 -1 //DUMMY VALUE int arch_support = 0; //Architecure is not supported @@ -246,6 +246,12 @@ static inline long syncfilerange(int fd, off64_t offset, off64_t nbytes, #elif (defined(__powerpc64__) || defined(__powerpc__)) && (__WORDSIZE==64) return syscall(__NR_sync_file_range2, fd, flags, offset, nbytes); + +#elif (defined(__arm__)) + + return syscall(__NR_sync_file_range2, fd, flags,(int)offset, + (int)(offset >> 32),(int)nbytes,(int)(nbytes >> 32)); + #else return syscall(__NR_sync_file_range, fd, offset, nbytes, flags); -- 1.6.3.1