]> Savannah Git Hosting - gnulib.git/commitdiff
doc: Mention the 64-bit inode number problem.
authorBruno Haible <bruno@clisp.org>
Fri, 3 Jan 2020 13:19:15 +0000 (14:19 +0100)
committerBruno Haible <bruno@clisp.org>
Fri, 3 Jan 2020 13:19:15 +0000 (14:19 +0100)
* m4/largefile.m4 (AC_SYS_LARGEFILE): Mention that this macro fixes the
64-bit inode number problem.
* doc/posix-functions/stat.texi: Mention that this module fixes the
64-bit inode number problem.
* doc/posix-functions/lstat.texi: Likewise.
* doc/posix-functions/fstat.texi: Likewise.
* doc/posix-functions/readdir.texi: Add more details.
* doc/posix-functions/readdir_r.texi: Likewise.

ChangeLog
doc/posix-functions/fstat.texi
doc/posix-functions/lstat.texi
doc/posix-functions/readdir.texi
doc/posix-functions/readdir_r.texi
doc/posix-functions/stat.texi
m4/largefile.m4

index 045aae39fba731cdaa842a524c8d7d814b190ac3..a37ece9636e8bcc0e3f3ca561a3fedc347316b00 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2020-01-03  Bruno Haible  <bruno@clisp.org>
+
+       doc: Mention the 64-bit inode number problem.
+       * m4/largefile.m4 (AC_SYS_LARGEFILE): Mention that this macro fixes the
+       64-bit inode number problem.
+       * doc/posix-functions/stat.texi: Mention that this module fixes the
+       64-bit inode number problem.
+       * doc/posix-functions/lstat.texi: Likewise.
+       * doc/posix-functions/fstat.texi: Likewise.
+       * doc/posix-functions/readdir.texi: Add more details.
+       * doc/posix-functions/readdir_r.texi: Likewise.
+
 2020-01-02  Bruno Haible  <bruno@clisp.org>
 
        wcrtomb: Add more tests.
index 579ea42f6c79110a0dd77f2d3a4d4531b249aeb6..a404891cb70b01ad0a56a293804df82c60cc42ae 100644 (file)
@@ -16,6 +16,11 @@ On platforms where @code{off_t} is a 32-bit type, @code{fstat} may not correctly
 report the size of files or block devices larger than 2 GB.
 (Cf. @code{AC_SYS_LARGEFILE}.)
 @item
+On Linux/x86 and Linux/x86_64, applications compiled in 32-bit mode cannot
+access files that happen to have a 64-bit inode number.  This can occur with
+file systems such as XFS (typically on large disks) and NFS.
+(Cf. @code{AC_SYS_LARGEFILE}.)
+@item
 On Solaris 11.4, when this function yields a timestamp with a
 nonpositive @code{tv_sec} value, @code{tv_nsec} might be in the range
 @minus{}1000000000..@minus{}1, representing a negative nanoseconds
index 9a03cfb337d075baad15b1df2f81275beaa8e88b..1b1aff62cd370bfc3fe8e669f491408045caa5b8 100644 (file)
@@ -13,6 +13,11 @@ On platforms where @code{off_t} is a 32-bit type, @code{lstat} may not
 correctly report the size of files or block devices larger than 2 GB.
 (Cf. @code{AC_SYS_LARGEFILE}.)
 @item
+On Linux/x86 and Linux/x86_64, applications compiled in 32-bit mode cannot
+access files that happen to have a 64-bit inode number.  This can occur with
+file systems such as XFS (typically on large disks) and NFS.
+(Cf. @code{AC_SYS_LARGEFILE}.)
+@item
 For symlinks, when the argument ends in a slash, some platforms don't
 dereference the argument:
 Solaris 9.
index 61ac883cff1361903366c8345b66917ad2d5f492..3ec36bdbbc63b00d197e2a29d7d52c183b954134 100644 (file)
@@ -15,7 +15,8 @@ MSVC 14.
 On platforms where @code{off_t} is a 32-bit type, this function may not
 work correctly on huge directories larger than 2 GB.  Also, on platforms
 where @code{ino_t} is a 32-bit type, this function may report inode numbers
-incorrectly.  (Cf. @code{AC_SYS_LARGEFILE}.)
+incorrectly.  This can occur with file systems such as XFS (typically on
+large disks) and NFS.  (Cf. @code{AC_SYS_LARGEFILE}.)
 @end itemize
 
 Portability problems not fixed by Gnulib:
index a56d3902e2383a53cdc78bcb74c64600d1b25d89..61534488d91d34f9129db04f5e1bd2864ed09b0a 100644 (file)
@@ -25,5 +25,6 @@ Minix 3.1.8, mingw, MSVC 14.
 On platforms where @code{off_t} is a 32-bit type, this function may not
 work correctly on huge directories larger than 2 GB.  Also, on platforms
 where @code{ino_t} is a 32-bit type, this function may report inode numbers
-incorrectly.  The fix is to use the @code{AC_SYS_LARGEFILE} macro.
+incorrectly.  This can occur with file systems such as XFS (typically on
+large disks) and NFS.  The fix is to use the @code{AC_SYS_LARGEFILE} macro.
 @end itemize
index 395717fe110ac7e73321c9e9f21e61b4a8ea2352..27fbe278b3f46e2535bffec39f29c5f07a36efb7 100644 (file)
@@ -13,6 +13,11 @@ On platforms where @code{off_t} is a 32-bit type, @code{stat} may not correctly
 report the size of files or block devices larger than 2 GB.
 (Cf. @code{AC_SYS_LARGEFILE}.)
 @item
+On Linux/x86 and Linux/x86_64, applications compiled in 32-bit mode cannot
+access files that happen to have a 64-bit inode number.  This can occur with
+file systems such as XFS (typically on large disks) and NFS.
+(Cf. @code{AC_SYS_LARGEFILE}.)
+@item
 The @code{st_atime}, @code{st_ctime}, @code{st_mtime} fields are affected by
 the current time zone and by the DST flag of the current time zone on some
 platforms:
index 40b16bc0e540eb563103ebae5d83278ea568cff2..e381339c40c3989912b82d05a1309c257efe6b9a 100644 (file)
@@ -1,4 +1,5 @@
 # Enable large files on systems where this is not the default.
+# Enable support for files on Linux file systems with 64-bit inode numbers.
 
 # Copyright 1992-1996, 1998-2020 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
@@ -73,6 +74,9 @@ rm -rf conftest*[]dnl
 # one must use special compiler options to get large-file access to work.
 # For more details about this brain damage please see:
 # http://www.unix.org/version2/whatsnew/lfs20mar.html
+# Additionally, on Linux file systems with 64-bit inodes a file that happens
+# to have a 64-bit inode number cannot be accessed by 32-bit applications on
+# Linux x86/x86_64.  This can occur with file systems such as XFS and NFS.
 AC_DEFUN([AC_SYS_LARGEFILE],
 [AC_ARG_ENABLE(largefile,
                [  --disable-largefile     omit support for large files])