aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2020-07-17 23:49:50 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2020-09-11 14:35:11 -0300
commit0b1c222cd04b0de2fec1b116a68df9118ec1c540 (patch)
treec3d8314b62f9b8c3e460d2b82960a91838b69e7f
parent90e1600f4f9e3a3dcbf0a91e23098b052c975a9d (diff)
downloadglibc-0b1c222cd04b0de2fec1b116a68df9118ec1c540.zip
glibc-0b1c222cd04b0de2fec1b116a68df9118ec1c540.tar.gz
glibc-0b1c222cd04b0de2fec1b116a68df9118ec1c540.tar.bz2
linux: Define STAT64_IS_KERNEL_STAT64
It indicates that the glibc export stat64 is similar in size and layout of the kernel stat64 used on the syscall. It is not currently used on stat implementation, but the idea is to indicate whether to use the kernel_stat to issue on the syscall on the *stat*64 variant (more specifically on mips which its exported ABI does not match the kernel). Reviewed-by: Lukasz Majewski <lukma@denx.de>
-rw-r--r--sysdeps/unix/sysv/linux/alpha/kernel_stat.h1
-rw-r--r--sysdeps/unix/sysv/linux/arc/kernel_stat.h1
-rw-r--r--sysdeps/unix/sysv/linux/hppa/kernel_stat.h1
-rw-r--r--sysdeps/unix/sysv/linux/ia64/kernel_stat.h1
-rw-r--r--sysdeps/unix/sysv/linux/kernel_stat.h1
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/kernel_stat.h1
-rw-r--r--sysdeps/unix/sysv/linux/mips/kernel_stat.h6
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h1
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/kernel_stat.h1
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h1
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h1
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h6
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/kernel_stat.h1
13 files changed, 23 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/alpha/kernel_stat.h b/sysdeps/unix/sysv/linux/alpha/kernel_stat.h
index 9bcc96c..ff69045 100644
--- a/sysdeps/unix/sysv/linux/alpha/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/alpha/kernel_stat.h
@@ -86,5 +86,6 @@ struct glibc21_stat
};
#define STAT_IS_KERNEL_STAT 0
+#define STAT64_IS_KERNEL_STAT64 1
#define XSTAT_IS_XSTAT64 1
#define STATFS_IS_STATFS64 0
diff --git a/sysdeps/unix/sysv/linux/arc/kernel_stat.h b/sysdeps/unix/sysv/linux/arc/kernel_stat.h
index 8fdd86b..fd9b113 100644
--- a/sysdeps/unix/sysv/linux/arc/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/arc/kernel_stat.h
@@ -19,6 +19,7 @@
/* Needed to elide the itemized copy code in common xstatconv.c. */
#define STAT_IS_KERNEL_STAT 1
+#define STAT64_IS_KERNEL_STAT64 1
/* Nice side-effect of 64-bit time_t switch is these are same. */
#define XSTAT_IS_XSTAT64 1
diff --git a/sysdeps/unix/sysv/linux/hppa/kernel_stat.h b/sysdeps/unix/sysv/linux/hppa/kernel_stat.h
index 0cbd010..e8ad135 100644
--- a/sysdeps/unix/sysv/linux/hppa/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/hppa/kernel_stat.h
@@ -31,5 +31,6 @@ struct kernel_stat {
#define _HAVE_STAT64_NSEC
#define STAT_IS_KERNEL_STAT 0
+#define STAT64_IS_KERNEL_STAT64 1
#define XSTAT_IS_XSTAT64 0
#define STATFS_IS_STATFS64 0
diff --git a/sysdeps/unix/sysv/linux/ia64/kernel_stat.h b/sysdeps/unix/sysv/linux/ia64/kernel_stat.h
index b38bf74..c96a058 100644
--- a/sysdeps/unix/sysv/linux/ia64/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/ia64/kernel_stat.h
@@ -17,5 +17,6 @@
<https://www.gnu.org/licenses/>. */
#define STAT_IS_KERNEL_STAT 1
+#define STAT64_IS_KERNEL_STAT64 1
#define XSTAT_IS_XSTAT64 1
#define STATFS_IS_STATFS64 0
diff --git a/sysdeps/unix/sysv/linux/kernel_stat.h b/sysdeps/unix/sysv/linux/kernel_stat.h
index ff54a45..b1bc145 100644
--- a/sysdeps/unix/sysv/linux/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/kernel_stat.h
@@ -35,5 +35,6 @@ struct kernel_stat
#define _HAVE_STAT64_NSEC
#define STAT_IS_KERNEL_STAT 0
+#define STAT64_IS_KERNEL_STAT64 1
#define XSTAT_IS_XSTAT64 0
#define STATFS_IS_STATFS64 0
diff --git a/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h b/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h
index 4daaedc..9ab1e50 100644
--- a/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h
@@ -49,5 +49,6 @@ struct kernel_stat
};
#define STAT_IS_KERNEL_STAT 0
+#define STAT64_IS_KERNEL_STAT64 1
#define XSTAT_IS_XSTAT64 0
#define STATFS_IS_STATFS64 0
diff --git a/sysdeps/unix/sysv/linux/mips/kernel_stat.h b/sysdeps/unix/sysv/linux/mips/kernel_stat.h
index e75f3e8..21dba2d 100644
--- a/sysdeps/unix/sysv/linux/mips/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/mips/kernel_stat.h
@@ -1,3 +1,6 @@
+#ifndef _KERNEL_STAT_H
+#define _KERNEL_STAT_H
+
#include <sgidefs.h>
/* As tempting as it is to define XSTAT_IS_XSTAT64 for n64, the
userland data structures are not identical, because of different
@@ -57,5 +60,8 @@ struct kernel_stat
#endif
#define STAT_IS_KERNEL_STAT 0
+#define STAT64_IS_KERNEL_STAT64 0
#define XSTAT_IS_XSTAT64 0
#define STATFS_IS_STATFS64 0
+
+#endif
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h b/sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h
index 75610b8..5757e65 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h
@@ -48,5 +48,6 @@ struct kernel_stat
#define _HAVE_STAT64_NSEC
#define STAT_IS_KERNEL_STAT 0
+#define STAT64_IS_KERNEL_STAT64 1
#define XSTAT_IS_XSTAT64 0
#define STATFS_IS_STATFS64 0
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/kernel_stat.h b/sysdeps/unix/sysv/linux/powerpc/powerpc64/kernel_stat.h
index 5c10da3..9f11b69 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/kernel_stat.h
@@ -17,5 +17,6 @@
<https://www.gnu.org/licenses/>. */
#define STAT_IS_KERNEL_STAT 1
+#define STAT64_IS_KERNEL_STAT64 1
#define XSTAT_IS_XSTAT64 1
#define STATFS_IS_STATFS64 0
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 b38bf74..c96a058 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h
@@ -17,5 +17,6 @@
<https://www.gnu.org/licenses/>. */
#define STAT_IS_KERNEL_STAT 1
+#define STAT64_IS_KERNEL_STAT64 1
#define XSTAT_IS_XSTAT64 1
#define STATFS_IS_STATFS64 0
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h b/sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h
index 5c8caca..4a2df42d 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h
@@ -32,5 +32,6 @@ struct kernel_stat
#define _HAVE_STAT64_NSEC
#define STAT_IS_KERNEL_STAT 0
+#define STAT64_IS_KERNEL_STAT64 1
#define XSTAT_IS_XSTAT64 0
#define STATFS_IS_STATFS64 0
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h b/sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h
index d14b248..0f3d405 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h
@@ -1,3 +1,6 @@
+#ifndef _KERNEL_STAT_H
+#define _KERNEL_STAT_H
+
/* Definition of `struct stat' used in the kernel */
struct kernel_stat
{
@@ -45,5 +48,8 @@ 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
+
+#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 b38bf74..c96a058 100644
--- a/sysdeps/unix/sysv/linux/x86_64/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/x86_64/kernel_stat.h
@@ -17,5 +17,6 @@
<https://www.gnu.org/licenses/>. */
#define STAT_IS_KERNEL_STAT 1
+#define STAT64_IS_KERNEL_STAT64 1
#define XSTAT_IS_XSTAT64 1
#define STATFS_IS_STATFS64 0