patches/glibc/2.9/260-fadvise64_64.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 17 18:10:53 2011 +0200 (2011-07-17)
changeset 2890 a59712c236df
parent 1201 c9967a6e3b25
permissions -rw-r--r--
cc/gcc: add host parameter to core compiler build process

Tell the core compiler what host it should run on (instead of
hard-coding runing on CT_HOST).

No functional change so far, switching between CT_HOST and CT_BUILD
will come in a following patch.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@1201
     1
Original patch from: gentoo/src/patchsets/glibc/2.9/1070_all_glibc-fadvise64_64.patch
yann@1201
     2
yann@1201
     3
-= BEGIN original header =-
yann@1201
     4
ripped from Debian
yann@1201
     5
yann@1201
     6
-= END original header =-
yann@1201
     7
yann@1201
     8
diff -durN glibc-2_9.orig/sysdeps/unix/sysv/linux/posix_fadvise.c glibc-2_9/sysdeps/unix/sysv/linux/posix_fadvise.c
yann@1201
     9
--- glibc-2_9.orig/sysdeps/unix/sysv/linux/posix_fadvise.c	2003-08-17 02:36:22.000000000 +0200
yann@1201
    10
+++ glibc-2_9/sysdeps/unix/sysv/linux/posix_fadvise.c	2009-02-02 22:00:58.000000000 +0100
yann@1201
    11
@@ -35,6 +35,19 @@
yann@1201
    12
     return INTERNAL_SYSCALL_ERRNO (ret, err);
yann@1201
    13
   return 0;
yann@1201
    14
 #else
yann@1201
    15
+# ifdef __NR_fadvise64_64
yann@1201
    16
+  INTERNAL_SYSCALL_DECL (err);  
yann@1201
    17
+  int ret = INTERNAL_SYSCALL (fadvise64_64, err, 6, fd,
yann@1201
    18
+			      __LONG_LONG_PAIR ((long) (offset >> 31),
yann@1201
    19
+						(long) offset),
yann@1201
    20
+			      __LONG_LONG_PAIR ((long) (len >> 31),
yann@1201
    21
+						(long) len),
yann@1201
    22
+			      advise);
yann@1201
    23
+  if (INTERNAL_SYSCALL_ERROR_P (ret, err))
yann@1201
    24
+    return INTERNAL_SYSCALL_ERRNO (ret, err);
yann@1201
    25
+  return 0;
yann@1201
    26
+# else
yann@1201
    27
   return ENOSYS;
yann@1201
    28
+# endif
yann@1201
    29
 #endif
yann@1201
    30
 }