public inbox for glibc-cvs@sourceware.org
help / color / mirror / Atom feed
* [glibc] linux: Fix STATFS_IS_STATFS64 definition
@ 2021-02-11 12:41 Adhemerval Zanella
  0 siblings, 0 replies; only message in thread
From: Adhemerval Zanella @ 2021-02-11 12:41 UTC (permalink / raw)
  To: glibc-cvs

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4b221ec9eebb53571b6e95dceb9d31c98b073a9f

commit 4b221ec9eebb53571b6e95dceb9d31c98b073a9f
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date:   Fri Feb 5 14:55:45 2021 +0000

    linux: Fix STATFS_IS_STATFS64 definition
    
    aarch64, arc, ia64, mips64, powerpc64, riscv32, riscv64, s390x, sparc64,
    and x86_64 defines STATFS_IS_STATFS64 to 0, but all of them alias
    statfs to statfs64 and the struct statfs has the same and layout of
    struct statfs64.
    
    The correct definition will be used on the [f]statfs[64] consolidation.
    
    This patch does not change code generation since the symbols are
    implemented using the auto-generation syscall for all the aforementioned
    ABIs.
    
    Reviewed-by: Carlos O'Donell <carlos@redhat.com>

Diff:
---
 sysdeps/unix/sysv/linux/aarch64/kernel_stat.h       | 21 +++++++++++++++++++++
 sysdeps/unix/sysv/linux/ia64/kernel_stat.h          |  2 +-
 sysdeps/unix/sysv/linux/mips/kernel_stat.h          |  6 +++++-
 .../unix/sysv/linux/powerpc/powerpc64/kernel_stat.h |  2 +-
 sysdeps/unix/sysv/linux/riscv/kernel_stat.h         |  2 +-
 sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h  |  2 +-
 sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h |  7 +++++--
 sysdeps/unix/sysv/linux/x86_64/kernel_stat.h        |  2 +-
 8 files changed, 36 insertions(+), 8 deletions(-)

diff --git a/sysdeps/unix/sysv/linux/aarch64/kernel_stat.h b/sysdeps/unix/sysv/linux/aarch64/kernel_stat.h
new file mode 100644
index 0000000000..33ad1b622b
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/aarch64/kernel_stat.h
@@ -0,0 +1,21 @@
+/* Internal definitions for stat functions.  Linux/AARch64 version.
+   Copyright (C) 2021 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library.  If not, see
+   <https://www.gnu.org/licenses/>.  */
+
+#define STAT_IS_KERNEL_STAT 1
+#define XSTAT_IS_XSTAT64 1
+#define STATFS_IS_STATFS64 1
diff --git a/sysdeps/unix/sysv/linux/ia64/kernel_stat.h b/sysdeps/unix/sysv/linux/ia64/kernel_stat.h
index e1eac69850..ee05a15590 100644
--- a/sysdeps/unix/sysv/linux/ia64/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/ia64/kernel_stat.h
@@ -19,4 +19,4 @@
 #define STAT_IS_KERNEL_STAT 1
 #define STAT64_IS_KERNEL_STAT64 1
 #define XSTAT_IS_XSTAT64 1
-#define STATFS_IS_STATFS64 0
+#define STATFS_IS_STATFS64 1
diff --git a/sysdeps/unix/sysv/linux/mips/kernel_stat.h b/sysdeps/unix/sysv/linux/mips/kernel_stat.h
index 21dba2de73..e4b0f211ca 100644
--- a/sysdeps/unix/sysv/linux/mips/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/mips/kernel_stat.h
@@ -62,6 +62,10 @@ struct kernel_stat
 #define STAT_IS_KERNEL_STAT 0
 #define STAT64_IS_KERNEL_STAT64 0
 #define XSTAT_IS_XSTAT64 0
-#define STATFS_IS_STATFS64 0
+#if _MIPS_SIM == _ABI64
+# define STATFS_IS_STATFS64 1
+#else
+# define STATFS_IS_STATFS64 0
+#endif
 
 #endif
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/kernel_stat.h b/sysdeps/unix/sysv/linux/powerpc/powerpc64/kernel_stat.h
index a1f66bcece..bc7390c9ff 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/kernel_stat.h
@@ -19,4 +19,4 @@
 #define STAT_IS_KERNEL_STAT 1
 #define STAT64_IS_KERNEL_STAT64 1
 #define XSTAT_IS_XSTAT64 1
-#define STATFS_IS_STATFS64 0
+#define STATFS_IS_STATFS64 1
diff --git a/sysdeps/unix/sysv/linux/riscv/kernel_stat.h b/sysdeps/unix/sysv/linux/riscv/kernel_stat.h
index ee8b37a9eb..4ad7913762 100644
--- a/sysdeps/unix/sysv/linux/riscv/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/riscv/kernel_stat.h
@@ -20,4 +20,4 @@
 #define STAT_IS_KERNEL_STAT 1
 
 #define XSTAT_IS_XSTAT64 1
-#define STATFS_IS_STATFS64 0
+#define STATFS_IS_STATFS64 1
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h b/sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h
index e1eac69850..ee05a15590 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h
@@ -19,4 +19,4 @@
 #define STAT_IS_KERNEL_STAT 1
 #define STAT64_IS_KERNEL_STAT64 1
 #define XSTAT_IS_XSTAT64 1
-#define STATFS_IS_STATFS64 0
+#define STATFS_IS_STATFS64 1
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h b/sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h
index 0f3d405239..29d18908da 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h
@@ -50,6 +50,9 @@ struct kernel_stat64
 #define STAT_IS_KERNEL_STAT 0
 #define STAT64_IS_KERNEL_STAT64 0
 #define XSTAT_IS_XSTAT64 1
-#define STATFS_IS_STATFS64 0
-
+#ifdef __arch64__
+# define STATFS_IS_STATFS64 1
+#else
+# define STATFS_IS_STATFS64 0
+#endif
 #endif /* _KERNEL_STAT_H  */
diff --git a/sysdeps/unix/sysv/linux/x86_64/kernel_stat.h b/sysdeps/unix/sysv/linux/x86_64/kernel_stat.h
index e1eac69850..ee05a15590 100644
--- a/sysdeps/unix/sysv/linux/x86_64/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/x86_64/kernel_stat.h
@@ -19,4 +19,4 @@
 #define STAT_IS_KERNEL_STAT 1
 #define STAT64_IS_KERNEL_STAT64 1
 #define XSTAT_IS_XSTAT64 1
-#define STATFS_IS_STATFS64 0
+#define STATFS_IS_STATFS64 1


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-02-11 12:41 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-11 12:41 [glibc] linux: Fix STATFS_IS_STATFS64 definition Adhemerval Zanella

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).