summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/common/sync_file_range.c
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2015-03-08 10:59:07 -0500
committerWaldemar Brodkorb <wbx@openadk.org>2015-03-08 14:02:59 -0500
commita22b1f00846fb4dc09fe8ddc32a44152875af7c2 (patch)
tree54884a15ca2a53ff5b176f98aacfa43ac81295fd /libc/sysdeps/linux/common/sync_file_range.c
parent4123d99677a8e5872f947e8a444f3481c71ab759 (diff)
fix regression for ARM thumb mode
Sync with GNU libc, see here why r7 is not usable for thumb mode: https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/arm/sysdep.h;h=37eac192b1e2e7f53f112b16450b9ce57054e27f;hb=HEAD Remove old OABI support. Fixes build breakage for ARM noMMU builds. Still no runtime testing.
Diffstat (limited to 'libc/sysdeps/linux/common/sync_file_range.c')
-rw-r--r--libc/sysdeps/linux/common/sync_file_range.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libc/sysdeps/linux/common/sync_file_range.c b/libc/sysdeps/linux/common/sync_file_range.c
index db797de62..52bc9d7af 100644
--- a/libc/sysdeps/linux/common/sync_file_range.c
+++ b/libc/sysdeps/linux/common/sync_file_range.c
@@ -24,6 +24,9 @@ static int __NC(sync_file_range)(int fd, off64_t offset, off64_t nbytes, unsigne
{
# if defined __powerpc__ && __WORDSIZE == 64
return INLINE_SYSCALL(sync_file_range, 4, fd, flags, offset, nbytes);
+# elif defined __arm__ && defined __thumb__
+ return INLINE_SYSCALL(sync_file_range, 6, fd,
+ OFF64_HI_LO(offset), OFF64_HI_LO(nbytes), flags);
# elif (defined __mips__ && _MIPS_SIM == _ABIO32) || \
(defined(__UCLIBC_SYSCALL_ALIGN_64BIT__) && !(defined(__powerpc__) || defined(__xtensa__)))
/* arch with 64-bit data in even reg alignment #2: [arcv2/others-in-future]