diff options
Diffstat (limited to 'sysdeps/unix/sysv/linux/arm/pread64.c')
-rw-r--r-- | sysdeps/unix/sysv/linux/arm/pread64.c | 25 |
1 files changed, 3 insertions, 22 deletions
diff --git a/sysdeps/unix/sysv/linux/arm/pread64.c b/sysdeps/unix/sysv/linux/arm/pread64.c index 78606997f9..ca71feb17b 100644 --- a/sysdeps/unix/sysv/linux/arm/pread64.c +++ b/sysdeps/unix/sysv/linux/arm/pread64.c @@ -26,30 +26,11 @@ ssize_t __libc_pread64 (int fd, void *buf, size_t count, off64_t offset) { - ssize_t result; - - if (SINGLE_THREAD_P) - { - /* In the ARM EABI, 64-bit values are aligned to even/odd register - pairs for syscalls. */ - result = INLINE_SYSCALL (pread64, 6, fd, buf, count, 0, - __LONG_LONG_PAIR ((off_t) (offset >> 32), - (off_t) (offset & 0xffffffff))); - - return result; - } - - int oldtype = LIBC_CANCEL_ASYNC (); - /* In the ARM EABI, 64-bit values are aligned to even/odd register pairs for syscalls. */ - result = INLINE_SYSCALL (pread64, 6, fd, buf, count, 0, - __LONG_LONG_PAIR ((off_t) (offset >> 32), - (off_t) (offset & 0xffffffff))); - - LIBC_CANCEL_RESET (oldtype); - - return result; + return SYSCALL_CANCEL (pread64, fd, buf, count, 0, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); } weak_alias (__libc_pread64, __pread64) |