]> 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)
committerUlrich Drepper <drepper@redhat.com>
Fri, 6 Nov 2009 17:26:31 +0000 (09:26 -0800)
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.

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 e6efe933c729946ef356a1b905ec035599c5f3a8..5c4b5d497f2ffdd205a702a66d198ecb2677f98c 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-11-03  Andreas Schwab  <schwab@linux-m68k.org>
 
        [BZ #4457]
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 06b9e48accaf4fffd5f58aeb8b531746c30cd680..6a38dc03fe208fd062a1f0fe18747eb2dce721ad 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 9677394773b7339153d1239a4e0445486746d7b7..9a0245a6c4cd663a716a7e4d6f9a65daa65b2813 100644 (file)
@@ -253,8 +253,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 ea0ee6e5512d535b538e4cfd8bdf95132344be35..6c4b66b7aceb07c893a7353b4fba2948d90ad397 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 3a11c48e040812a09fa28cc9fb269e844efaf718..d3dddbc368ad5dc5cff6ef4bdbc7d1d29ea08aeb 100644 (file)
@@ -279,8 +279,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 03ecd72fea536e0dfa09b49bf32c8898aa976427..d7a21ea2e25754f370d00f223a3fbc5dd104b4e0 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 2b8c9bd102ba7820cac3fa5c237894d48564405c..dfa848a3776c5605ac43e54a6dfc213e80511db2 100644 (file)
@@ -278,8 +278,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 29c956cdf8a64c437cfe559e952add31c3dc4424..c3eb859e7ded3e967ac562bb37f93a95c45e613f 100644 (file)
@@ -273,8 +273,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