]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Fix preadv, pwritev and fallocate for -D_FILE_OFFSET_BITS=64.
authorJakub Jelinek <jakub@redhat.com>
Fri, 6 Nov 2009 17:26:31 +0000 (09:26 -0800)
committerAndreas Schwab <schwab@redhat.com>
Fri, 13 Nov 2009 14:09:12 +0000 (15:09 +0100)
As reported in http://bugzilla.redhat.com/533063 , preadv/pwritev prototypes
are wrong on 32-bit arches with -D_FILE_OFFSET_BITS=64 and as I've just
found, fallocate is wrong too.
The problem is that only off_t is remapped to the 64-bit type transparently,
__off_t is not.
(cherry picked from commit 34df851b3364e14133b865574dbc5f2a8b88874e)

ChangeLog
misc/sys/uio.h
sysdeps/unix/sysv/linux/i386/bits/fcntl.h
sysdeps/unix/sysv/linux/ia64/bits/fcntl.h
sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
sysdeps/unix/sysv/linux/s390/bits/fcntl.h
sysdeps/unix/sysv/linux/sh/bits/fcntl.h
sysdeps/unix/sysv/linux/sparc/bits/fcntl.h
sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h

index 5927a241a198e47b603a0cdd887e09dfa8dd93ce..38a3d4d56a63a1d2c41bed9224e5eda9ec1304d8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2009-11-04  Jakub Jelinek  <jakub@redhat.com>
+
+       * misc/sys/uio.h (preadv, pwritev): Fix type of last argument
+       when -D_FILE_OFFSET_BITS=64.
+
+       * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (fallocate): Fix types
+       of last two arguments when -D_FILE_OFFSET_BITS=64.
+       * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (fallocate): Likewise.
+       * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (fallocate): Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (fallocate): Likewise.
+       * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (fallocate): Likewise.
+       * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (fallocate): Likewise.
+       * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (fallocate): Likewise.
+
 2009-09-05  H.J. Lu  <hongjiu.lu@intel.com>
 
        * configure.in: Support binutils 2.100 and 3.0.
index 05d956bfd33c431e0396fb77a97627b33d653f78..a32b7ed8e54f53a7defbdd53b68fca808489c3e9 100644 (file)
@@ -80,10 +80,10 @@ extern ssize_t pwritev (int __fd, __const struct iovec *__iovec, int __count,
 # else
 #  ifdef __REDIRECT
 extern ssize_t __REDIRECT (preadv, (int __fd, __const struct iovec *__iovec,
-                                   int __count, __off_t __offset),
+                                   int __count, __off64_t __offset),
                           preadv64) __wur;
 extern ssize_t __REDIRECT (pwritev, (int __fd, __const struct iovec *__iovec,
-                                    int __count, __off_t __offset),
+                                    int __count, __off64_t __offset),
                           pwritev64) __wur;
 #  else
 #   define preadv preadv64
index 35ef665998f22a3deae27c541f19b362a8fc9b2a..35dfb299d2a5cc7d9484f40686302fe3e611fb0a 100644 (file)
@@ -240,8 +240,8 @@ extern ssize_t tee (int __fdin, int __fdout, size_t __len,
 extern int fallocate (int __fd, int __mode, __off_t __offset, __off_t __len);
 # else
 #  ifdef __REDIRECT
-extern int __REDIRECT (fallocate, (int __fd, int __mode, __off_t __offset,
-                                  __off_t __len),
+extern int __REDIRECT (fallocate, (int __fd, int __mode, __off64_t __offset,
+                                  __off64_t __len),
                       fallocate64);
 #  else
 #   define fallocate fallocate64
index 6abc5ced65ecfb8c03c98239cae0963e21e804fa..92b96bd14ca5ff2d84544da4ea6a90199743ff6d 100644 (file)
@@ -234,8 +234,8 @@ extern ssize_t tee (int __fdin, int __fdout, size_t __len,
 extern int fallocate (int __fd, int __mode, __off_t __offset, __off_t __len);
 # else
 #  ifdef __REDIRECT
-extern int __REDIRECT (fallocate, (int __fd, int __mode, __off_t __offset,
-                                  __off_t __len),
+extern int __REDIRECT (fallocate, (int __fd, int __mode, __off64_t __offset,
+                                  __off64_t __len),
                       fallocate64);
 #  else
 #   define fallocate fallocate64
index 90b669ab6097d48d328cf11fcf6e93e4f070850d..493d5cba5f22c9836489e1e8a9d2a717aa47ec58 100644 (file)
@@ -240,8 +240,8 @@ extern ssize_t tee (int __fdin, int __fdout, size_t __len,
 extern int fallocate (int __fd, int __mode, __off_t __offset, __off_t __len);
 # else
 #  ifdef __REDIRECT
-extern int __REDIRECT (fallocate, (int __fd, int __mode, __off_t __offset,
-                                  __off_t __len),
+extern int __REDIRECT (fallocate, (int __fd, int __mode, __off64_t __offset,
+                                  __off64_t __len),
                       fallocate64);
 #  else
 #   define fallocate fallocate64
index ff5941df6544ce52fa71950b6d6bcda1b7566b75..54c4c527513518e945ea1b73c1bead4f19c2a56e 100644 (file)
@@ -260,8 +260,8 @@ extern ssize_t tee (int __fdin, int __fdout, size_t __len,
 extern int fallocate (int __fd, int __mode, __off_t __offset, __off_t __len);
 # else
 #  ifdef __REDIRECT
-extern int __REDIRECT (fallocate, (int __fd, int __mode, __off_t __offset,
-                                  __off_t __len),
+extern int __REDIRECT (fallocate, (int __fd, int __mode, __off64_t __offset,
+                                  __off64_t __len),
                       fallocate64);
 #  else
 #   define fallocate fallocate64
index 35ef665998f22a3deae27c541f19b362a8fc9b2a..35dfb299d2a5cc7d9484f40686302fe3e611fb0a 100644 (file)
@@ -240,8 +240,8 @@ extern ssize_t tee (int __fdin, int __fdout, size_t __len,
 extern int fallocate (int __fd, int __mode, __off_t __offset, __off_t __len);
 # else
 #  ifdef __REDIRECT
-extern int __REDIRECT (fallocate, (int __fd, int __mode, __off_t __offset,
-                                  __off_t __len),
+extern int __REDIRECT (fallocate, (int __fd, int __mode, __off64_t __offset,
+                                  __off64_t __len),
                       fallocate64);
 #  else
 #   define fallocate fallocate64
index d59744a55e22324a6365616654e15859ff2cb6f4..56d9c004e7e56d5bac8c3291c27b3e67f996ed95 100644 (file)
@@ -259,8 +259,8 @@ extern ssize_t tee (int __fdin, int __fdout, size_t __len,
 extern int fallocate (int __fd, int __mode, __off_t __offset, __off_t __len);
 # else
 #  ifdef __REDIRECT
-extern int __REDIRECT (fallocate, (int __fd, int __mode, __off_t __offset,
-                                  __off_t __len),
+extern int __REDIRECT (fallocate, (int __fd, int __mode, __off64_t __offset,
+                                  __off64_t __len),
                       fallocate64);
 #  else
 #   define fallocate fallocate64
index bc0f4d687b38aed532315bf0788bbc81cfde00f5..1d68a201a5edf0b06253ea96b71fda0eeecf5e41 100644 (file)
@@ -254,8 +254,8 @@ extern ssize_t tee (int __fdin, int __fdout, size_t __len,
 extern int fallocate (int __fd, int __mode, __off_t __offset, __off_t __len);
 # else
 #  ifdef __REDIRECT
-extern int __REDIRECT (fallocate, (int __fd, int __mode, __off_t __offset,
-                                  __off_t __len),
+extern int __REDIRECT (fallocate, (int __fd, int __mode, __off64_t __offset,
+                                  __off64_t __len),
                       fallocate64);
 #  else
 #   define fallocate fallocate64