blob: b0ca755ea08d995f8d9c52809d07fb7c01c05277 [file] [log] [blame]
Greg Kroah-Hartman6f52b162017-11-01 15:08:43 +01001/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
Linus Torvalds1da177e2005-04-16 15:20:36 -07002#ifndef __ASM_SH_STAT_H
3#define __ASM_SH_STAT_H
4
5struct __old_kernel_stat {
6 unsigned short st_dev;
7 unsigned short st_ino;
8 unsigned short st_mode;
9 unsigned short st_nlink;
10 unsigned short st_uid;
11 unsigned short st_gid;
12 unsigned short st_rdev;
13 unsigned long st_size;
14 unsigned long st_atime;
15 unsigned long st_mtime;
16 unsigned long st_ctime;
17};
18
19struct stat {
SUGIOKA Toshinobu760bcb12007-03-30 14:51:44 +090020 unsigned long st_dev;
21 unsigned long st_ino;
Linus Torvalds1da177e2005-04-16 15:20:36 -070022 unsigned short st_mode;
23 unsigned short st_nlink;
24 unsigned short st_uid;
25 unsigned short st_gid;
SUGIOKA Toshinobu760bcb12007-03-30 14:51:44 +090026 unsigned long st_rdev;
Linus Torvalds1da177e2005-04-16 15:20:36 -070027 unsigned long st_size;
28 unsigned long st_blksize;
29 unsigned long st_blocks;
30 unsigned long st_atime;
31 unsigned long st_atime_nsec;
32 unsigned long st_mtime;
33 unsigned long st_mtime_nsec;
34 unsigned long st_ctime;
35 unsigned long st_ctime_nsec;
36 unsigned long __unused4;
37 unsigned long __unused5;
38};
39
Linus Torvalds1da177e2005-04-16 15:20:36 -070040/* This matches struct stat64 in glibc2.1, hence the absolutely
41 * insane amounts of padding around dev_t's.
42 */
43struct stat64 {
44 unsigned long long st_dev;
45 unsigned char __pad0[4];
46
SUGIOKA Toshinobu760bcb12007-03-30 14:51:44 +090047#define STAT64_HAS_BROKEN_ST_INO 1
48 unsigned long __st_ino;
49
Linus Torvalds1da177e2005-04-16 15:20:36 -070050 unsigned int st_mode;
51 unsigned int st_nlink;
52
53 unsigned long st_uid;
54 unsigned long st_gid;
55
56 unsigned long long st_rdev;
57 unsigned char __pad3[4];
58
59 long long st_size;
60 unsigned long st_blksize;
61
Takashi Satoabcb6c92006-03-26 01:37:51 -080062 unsigned long long st_blocks; /* Number 512-byte blocks allocated. */
Linus Torvalds1da177e2005-04-16 15:20:36 -070063
64 unsigned long st_atime;
65 unsigned long st_atime_nsec;
66
67 unsigned long st_mtime;
68 unsigned long st_mtime_nsec;
69
70 unsigned long st_ctime;
Paul Mundt17bfa632007-11-21 17:28:37 +090071 unsigned long st_ctime_nsec;
Linus Torvalds1da177e2005-04-16 15:20:36 -070072
SUGIOKA Toshinobu760bcb12007-03-30 14:51:44 +090073 unsigned long long st_ino;
Linus Torvalds1da177e2005-04-16 15:20:36 -070074};
75
SUGIOKA Toshinobu760bcb12007-03-30 14:51:44 +090076#define STAT_HAVE_NSEC 1
77
Linus Torvalds1da177e2005-04-16 15:20:36 -070078#endif /* __ASM_SH_STAT_H */