[klibc] arm64: Fix struct stat
Use actual struct timespec fields in struct stat, and use the proper
__stdev64 macro for the dev_t fields.
Also fix bizarre formatting.
Cc: Neil Williams <codehelp@debian.org>
Cc: Anil Singhar <anil.singhar@linaro.org>
Cc: Steve Capper <steve.capper@linaro.org>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
diff --git a/usr/include/arch/arm64/klibc/archstat.h b/usr/include/arch/arm64/klibc/archstat.h
index a1a3e79..f5bfa80 100644
--- a/usr/include/arch/arm64/klibc/archstat.h
+++ b/usr/include/arch/arm64/klibc/archstat.h
@@ -3,27 +3,26 @@
#include <klibc/stathelp.h>
+#define _STATBUF_ST_NSEC
+
struct stat {
- unsigned long st_dev; /* Device. */
- unsigned long st_ino; /* File serial number. */
- unsigned int st_mode; /* File mode. */
- unsigned int st_nlink; /* Link count. */
- unsigned int st_uid; /* User ID of the file's owner. */
- unsigned int st_gid; /* Group ID of the file's group. */
- unsigned long st_rdev; /* Device number, if device. */
- unsigned long __pad1;
- long st_size; /* Size of file, in bytes. */
- int st_blksize; /* Optimal block size for I/O. */
- int __pad2;
- long st_blocks; /* Number 512-byte blocks allocated. */
- long st_atime; /* Time of last access. */
- unsigned long st_atime_nsec;
- long st_mtime; /* Time of last modification. */
- unsigned long st_mtime_nsec;
- long st_ctime; /* Time of last status change. */
- unsigned long st_ctime_nsec;
- unsigned int __unused4;
- unsigned int __unused5;
- };
+ __stdev64 (st_dev); /* Device */
+ unsigned long st_ino; /* File serial number */
+ unsigned int st_mode; /* File mode */
+ unsigned int st_nlink; /* Link count */
+ unsigned int st_uid; /* User ID of the file's owner */
+ unsigned int st_gid; /* Group ID of the file's group */
+ __stdev64 (st_rdev); /* Device number, if device */
+ unsigned long __pad1;
+ long st_size; /* Size of file, in bytes */
+ int st_blksize; /* Optimal block size for I/O */
+ int __pad2;
+ long st_blocks; /* Number 512-byte blocks allocated */
+ struct timespec st_atim; /* Time of last access */
+ struct timespec st_mtim; /* Time of last modification */
+ struct timespec st_ctim; /* Time of last status change */
+ unsigned int __unused4;
+ unsigned int __unused5;
+};
#endif