summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libc/sysdeps/linux/arm/posix_fadvise.c19
-rw-r--r--libc/sysdeps/linux/arm/posix_fadvise64.c17
-rw-r--r--libc/sysdeps/linux/i386/posix_fadvise64.S26
3 files changed, 47 insertions, 15 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
diff --git a/libc/sysdeps/linux/i386/posix_fadvise64.S b/libc/sysdeps/linux/i386/posix_fadvise64.S
index b99b35ee7..17f006aa8 100644
--- a/libc/sysdeps/linux/i386/posix_fadvise64.S
+++ b/libc/sysdeps/linux/i386/posix_fadvise64.S
@@ -22,10 +22,17 @@
#include <bits/errno.h>
#include <sys/syscall.h>
+/* 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
+*/
+
.text
-.global __libc_posix_fadvise64
-.type __libc_posix_fadvise64,%function
-__libc_posix_fadvise64:
+.global posix_fadvise64
+.type posix_fadvise64,%function
+posix_fadvise64:
#if defined __NR_fadvise64_64
/* Save regs */
pushl %ebp
@@ -91,10 +98,11 @@ overflow:
/* Successful; return the syscall's value. */
ret
-.size __libc_posix_fadvise64,.-__libc_posix_fadvise64
-
-libc_hidden_def(__libc_posix_fadvise64)
-#if defined __UCLIBC_HAS_LFS__ && defined __UCLIBC_HAS_ADVANCED_REALTIME__
-weak_alias(__libc_posix_fadvise64,posix_fadvise64)
-#endif
+.size posix_fadvise64,.-posix_fadvise64
+/*
+** libc_hidden_def(__libc_posix_fadvise64)
+** #if defined __UCLIBC_HAS_LFS__ && defined __UCLIBC_HAS_ADVANCED_REALTIME__
+** weak_alias(__libc_posix_fadvise64,posix_fadvise64)
+** #endif
+*/