diff options
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/unix/sysv/linux/fallocate.c | 2 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/fallocate64.c | 2 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/wordsize-64/fallocate.c | 5 |
3 files changed, 7 insertions, 2 deletions
diff --git a/sysdeps/unix/sysv/linux/fallocate.c b/sysdeps/unix/sysv/linux/fallocate.c index 116f00046e..dc2b4e92ca 100644 --- a/sysdeps/unix/sysv/linux/fallocate.c +++ b/sysdeps/unix/sysv/linux/fallocate.c @@ -25,7 +25,7 @@ int fallocate (int fd, int mode, __off_t offset, __off_t len) { -#ifndef __NR_fallocate +#ifdef __NR_fallocate return INLINE_SYSCALL (fallocate, 6, fd, mode, __LONG_LONG_PAIR (offset >> 31, offset), __LONG_LONG_PAIR (len >> 31, len)); diff --git a/sysdeps/unix/sysv/linux/fallocate64.c b/sysdeps/unix/sysv/linux/fallocate64.c index 2fbe988910..ebcaf671b3 100644 --- a/sysdeps/unix/sysv/linux/fallocate64.c +++ b/sysdeps/unix/sysv/linux/fallocate64.c @@ -25,7 +25,7 @@ int __fallocate64_l64 (int fd, int mode, __off64_t offset, __off64_t len) { -#ifndef __NR_fallocate +#ifdef __NR_fallocate return INLINE_SYSCALL (fallocate, 6, fd, mode, __LONG_LONG_PAIR ((long int) (offset >> 32), (long int) offset), diff --git a/sysdeps/unix/sysv/linux/wordsize-64/fallocate.c b/sysdeps/unix/sysv/linux/wordsize-64/fallocate.c index 0eabab9781..3e8954f0b7 100644 --- a/sysdeps/unix/sysv/linux/wordsize-64/fallocate.c +++ b/sysdeps/unix/sysv/linux/wordsize-64/fallocate.c @@ -25,6 +25,11 @@ int fallocate (int fd, int mode, __off_t offset, __off_t len) { +#ifdef __NR_fallocate return INLINE_SYSCALL (fallocate, 4, fd, mode, offset, len); +#else + __set_errno (ENOSYS); + return -1; +#endif } strong_alias (fallocate, fallocate64) |