summaryrefslogtreecommitdiff
path: root/patches/glibc/ports-2.10.1/200-fadvise64_64.patch
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2009-11-13 20:37:18 (GMT)
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2009-11-13 20:37:18 (GMT)
commit4b173045e97ab47f92bc27e9bef3a04f5742b263 (patch)
tree5c907ac100fc957240f4936d58c16a26554cfcdf /patches/glibc/ports-2.10.1/200-fadvise64_64.patch
parent590ca63f0dc6a548e2254d71b065efbf38ed85d8 (diff)
libc/glibc: add 2.10.1
Woo... It seems the glibc guys finally decided that tarballs were not deprecated, in fact. The patchset was vampirised from Gentoo (kudos, guys!), and applies to glibc+ports, so that's why it's been added as a patchset against ports, not against glibc.
Diffstat (limited to 'patches/glibc/ports-2.10.1/200-fadvise64_64.patch')
-rw-r--r--patches/glibc/ports-2.10.1/200-fadvise64_64.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/patches/glibc/ports-2.10.1/200-fadvise64_64.patch b/patches/glibc/ports-2.10.1/200-fadvise64_64.patch
new file mode 100644
index 0000000..ec22188
--- /dev/null
+++ b/patches/glibc/ports-2.10.1/200-fadvise64_64.patch
@@ -0,0 +1,28 @@
+ripped from Debian
+
+ sysdeps/unix/sysv/linux/posix_fadvise.c | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+diff -durN glibc-2.10.1.orig/sysdeps/unix/sysv/linux/posix_fadvise.c glibc-2.10.1/sysdeps/unix/sysv/linux/posix_fadvise.c
+--- glibc-2.10.1.orig/sysdeps/unix/sysv/linux/posix_fadvise.c 2003-08-17 02:36:22.000000000 +0200
++++ glibc-2.10.1/sysdeps/unix/sysv/linux/posix_fadvise.c 2009-11-13 00:50:03.000000000 +0100
+@@ -35,6 +35,19 @@
+ return INTERNAL_SYSCALL_ERRNO (ret, err);
+ return 0;
+ #else
++# ifdef __NR_fadvise64_64
++ INTERNAL_SYSCALL_DECL (err);
++ int ret = INTERNAL_SYSCALL (fadvise64_64, err, 6, fd,
++ __LONG_LONG_PAIR ((long) (offset >> 31),
++ (long) offset),
++ __LONG_LONG_PAIR ((long) (len >> 31),
++ (long) len),
++ advise);
++ if (INTERNAL_SYSCALL_ERROR_P (ret, err))
++ return INTERNAL_SYSCALL_ERRNO (ret, err);
++ return 0;
++# else
+ return ENOSYS;
++# endif
+ #endif
+ }