summaryrefslogtreecommitdiffstats
path: root/libc/sysdeps/linux/arm/bits/kernel_stat.h
diff options
context:
space:
mode:
author"Steven J. Hill" <sjhill@realitydiluted.com>2005-07-25 02:29:20 +0000
committer"Steven J. Hill" <sjhill@realitydiluted.com>2005-07-25 02:29:20 +0000
commitff45f14ea255d442f779157db133d73777675a5c (patch)
treeeafe5f8052f5e3fb0f50c48d3b8fdd371445c302 /libc/sysdeps/linux/arm/bits/kernel_stat.h
parent1d2230a7d275706c5f0de850e15527aae3744310 (diff)
downloaduClibc-alpine-ff45f14ea255d442f779157db133d73777675a5c.tar.bz2
uClibc-alpine-ff45f14ea255d442f779157db133d73777675a5c.tar.xz
A merging we will go. A merging we will go. Hi ho the merrio' a merging we will go.
Diffstat (limited to 'libc/sysdeps/linux/arm/bits/kernel_stat.h')
-rw-r--r--libc/sysdeps/linux/arm/bits/kernel_stat.h67
1 files changed, 42 insertions, 25 deletions
diff --git a/libc/sysdeps/linux/arm/bits/kernel_stat.h b/libc/sysdeps/linux/arm/bits/kernel_stat.h
index bfef64cea..70d268c19 100644
--- a/libc/sysdeps/linux/arm/bits/kernel_stat.h
+++ b/libc/sysdeps/linux/arm/bits/kernel_stat.h
@@ -6,51 +6,68 @@
* different opinion on the subject... */
struct kernel_stat {
+#if defined(__ARMEB__)
unsigned short st_dev;
unsigned short __pad1;
+#else
+ unsigned long st_dev;
+#endif
unsigned long st_ino;
unsigned short st_mode;
unsigned short st_nlink;
unsigned short st_uid;
unsigned short st_gid;
+#if defined(__ARMEB__)
unsigned short st_rdev;
unsigned short __pad2;
+#else
+ unsigned long st_rdev;
+#endif
unsigned long st_size;
unsigned long st_blksize;
unsigned long st_blocks;
unsigned long st_atime;
- unsigned long __unused1;
+ unsigned long st_atime_nsec;
unsigned long st_mtime;
- unsigned long __unused2;
+ unsigned long st_mtime_nsec;
unsigned long st_ctime;
- unsigned long __unused3;
+ unsigned long st_ctime_nsec;
unsigned long __unused4;
unsigned long __unused5;
};
+/* see the notes in common/xstatconv.c about why we have these
+ * funky funk unions here ... i blame the schools */
struct kernel_stat64 {
- unsigned short st_dev;
- unsigned char __pad0[10];
+ unsigned long long st_dev;
+ unsigned char __pad0[4];
+
#define _HAVE_STAT64___ST_INO
- unsigned long __st_ino;
- unsigned int st_mode;
- unsigned int st_nlink;
- unsigned long st_uid;
- unsigned long st_gid;
- unsigned short st_rdev;
- unsigned char __pad3[10];
- long long st_size;
- unsigned long st_blksize;
- unsigned long st_blocks; /* Number 512-byte blocks allocated. */
- unsigned long __pad4; /* future possible st_blocks high bits */
- unsigned long st_atime;
- unsigned long __pad5;
- unsigned long st_mtime;
- unsigned long __pad6;
- unsigned long st_ctime;
- unsigned long __pad7; /* will be high 32 bits of ctime someday */
- unsigned long long st_ino;
-};
+ unsigned long __st_ino;
+ unsigned int st_mode;
+ unsigned int st_nlink;
+ unsigned long st_uid;
+ unsigned long st_gid;
-#endif /* _BITS_STAT_STRUCT_H */
+ unsigned long long st_rdev;
+ unsigned char __pad3[4];
+ long long st_size;
+ unsigned long st_blksize;
+#if defined(__ARMEB__)
+ unsigned long __pad4; /* future possible st_blocks high bits */
+ unsigned long st_blocks; /* Number 512-byte blocks allocated. */
+#else
+ unsigned long st_blocks; /* Number 512-byte blocks allocated. */
+ unsigned long __pad4; /* future possible st_blocks high bits */
+#endif
+ unsigned long st_atime;
+ unsigned long st_atime_nsec;
+ unsigned long st_mtime;
+ unsigned long st_mtime_nsec;
+ unsigned long st_ctime;
+ unsigned long st_ctime_nsec;
+ unsigned long long st_ino;
+} __attribute__((packed));
+
+#endif /* _BITS_STAT_STRUCT_H */