diff options
Diffstat (limited to 'libc/sysdeps/linux/arm')
-rw-r--r-- | libc/sysdeps/linux/arm/posix_fadvise.c | 19 | ||||
-rw-r--r-- | libc/sysdeps/linux/arm/posix_fadvise64.c | 17 |
2 files changed, 30 insertions, 6 deletions
diff --git a/libc/sysdeps/linux/arm/posix_fadvise.c b/libc/sysdeps/linux/arm/posix_fadvise.c index bb4ac7b0c..b23eb3d6b 100644 --- a/libc/sysdeps/linux/arm/posix_fadvise.c +++ b/libc/sysdeps/linux/arm/posix_fadvise.c @@ -9,12 +9,21 @@ */ #include <sys/syscall.h> #include <fcntl.h> + #if defined __NR_arm_fadvise64_64 + +/* Was named __libc_posix_fadvise for some inexplicable reason. +** google says only uclibc has *__libc*_posix_fadviseXXX, +** so it cannot be compat with anything. +** +** Remove this comment and one at the end after 0.9.31 +*/ + /* This is for the ARM version of fadvise64_64 which swaps the params * * about to avoid having ABI compat issues * */ #define __NR___syscall_arm_fadvise64_64 __NR_arm_fadvise64_64 -int __libc_posix_fadvise(int fd, off_t offset, off_t len, int advise) +int posix_fadvise(int fd, off_t offset, off_t len, int advise) { INTERNAL_SYSCALL_DECL (err); int ret = INTERNAL_SYSCALL (arm_fadvise64_64, err, 6, fd, advise, @@ -24,13 +33,15 @@ int __libc_posix_fadvise(int fd, off_t offset, off_t len, int advise) if (INTERNAL_SYSCALL_ERROR_P (ret, err)) return INTERNAL_SYSCALL_ERRNO (ret, err); return 0; - } -weak_alias(__libc_posix_fadvise, posix_fadvise); + +/* weak_alias(__libc_posix_fadvise, posix_fadvise); */ + #else + int posix_fadvise(int fd attribute_unused, off_t offset attribute_unused, off_t len attribute_unused, int advice attribute_unused) { return ENOSYS; } -#endif +#endif diff --git a/libc/sysdeps/linux/arm/posix_fadvise64.c b/libc/sysdeps/linux/arm/posix_fadvise64.c index 479b0c5a2..4b27381d1 100644 --- a/libc/sysdeps/linux/arm/posix_fadvise64.c +++ b/libc/sysdeps/linux/arm/posix_fadvise64.c @@ -20,11 +20,19 @@ #ifdef __UCLIBC_HAS_LFS__ #if defined __NR_arm_fadvise64_64 + +/* Was named __libc_posix_fadvise64 for some inexplicable reason. +** google says only uclibc has *__libc*_posix_fadviseXXX, +** so it cannot be compat with anything. +** +** Remove this comment and one at the end after 0.9.31 +*/ + /* This is for the ARM version of fadvise64_64 which swaps the params * about to avoid having ABI compat issues */ #define __NR___syscall_arm_fadvise64_64 __NR_arm_fadvise64_64 -int __libc_posix_fadvise64(int fd, __off64_t offset, __off64_t len, int advise) +int posix_fadvise64(int fd, __off64_t offset, __off64_t len, int advise) { INTERNAL_SYSCALL_DECL (err); int ret = INTERNAL_SYSCALL (arm_fadvise64_64, err, 6, fd, advise, @@ -36,11 +44,16 @@ int __libc_posix_fadvise64(int fd, __off64_t offset, __off64_t len, int advise) return INTERNAL_SYSCALL_ERRNO (ret, err); return 0; } -weak_alias(__libc_posix_fadvise64, posix_fadvise64); + +/* weak_alias(__libc_posix_fadvise64, posix_fadvise64); */ + #else + int posix_fadvise64(int fd, __off64_t offset, __off64_t len, int advise) { return ENOSYS; } + #endif + #endif |