about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/mips/kernel_stat.h
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2003-04-05 19:57:35 +0000
committerAlexandre Oliva <aoliva@redhat.com>2003-04-05 19:57:35 +0000
commit743f1874ad67aa2f1b734be1ee752f5935da5eb2 (patch)
tree53bc9cd0ae6b2621dbd73d5c85bfcdf9ced80c85 /sysdeps/unix/sysv/linux/mips/kernel_stat.h
parent54e0138f7f9ff016d3cb6b2cb02a3ca2a727b6e7 (diff)
downloadglibc-743f1874ad67aa2f1b734be1ee752f5935da5eb2.tar.gz
glibc-743f1874ad67aa2f1b734be1ee752f5935da5eb2.tar.xz
glibc-743f1874ad67aa2f1b734be1ee752f5935da5eb2.zip
* sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New. * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New. * sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available on mips n32. * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why XSTAT_IS_XSTAT64 must not be used for mips n64. Use 64-bit data structure on n32 as well. * sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant data types on n32 and n64.
2003-04-05  Alexandre Oliva  <aoliva@redhat.com>

	* sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New.
	* sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New.
	* sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available
	on mips n32.
	* sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why 
	XSTAT_IS_XSTAT64 must not be used for mips n64.  Use 64-bit data
	structure on n32 as well.
	* sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant
	data types on n32 and n64.
Diffstat (limited to 'sysdeps/unix/sysv/linux/mips/kernel_stat.h')
-rw-r--r--sysdeps/unix/sysv/linux/mips/kernel_stat.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/sysdeps/unix/sysv/linux/mips/kernel_stat.h b/sysdeps/unix/sysv/linux/mips/kernel_stat.h
index b5fcd008b0..3f1bce57c5 100644
--- a/sysdeps/unix/sysv/linux/mips/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/mips/kernel_stat.h
@@ -1,17 +1,20 @@
-/* Definition of `struct stat' used in the kernel..  */
-#if defined _ABI64 && _MIPS_SIM == _ABI64
+/* As tempting as it is to define XSTAT_IS_XSTAT64 for n64, the
+   userland data structures are not identical, because of different
+   padding.  */
+/* Definition of `struct stat' used in the kernel.  */
+#if _MIPS_SIM != _MIPS_SIM_ABI32
 struct kernel_stat
   {
     unsigned int st_dev;
     unsigned int __pad1[3];
-    unsigned long st_ino;
+    unsigned long long st_ino;
     unsigned int st_mode;
     unsigned int st_nlink;
     int st_uid;
     int st_gid;
     unsigned int st_rdev;
     unsigned int __pad2[3];
-    long st_size;
+    long long st_size;
     unsigned int st_atime;
     unsigned int __unused1;
     unsigned int st_mtime;
@@ -20,7 +23,7 @@ struct kernel_stat
     unsigned int __unused3;
     unsigned int st_blksize;
     unsigned int __pad3;
-    unsigned long st_blocks;
+    unsigned long long st_blocks;
   };
 #else
 struct kernel_stat