]>
Commit | Line | Data |
---|---|---|
0b1c222c AZ |
1 | #ifndef _KERNEL_STAT_H |
2 | #define _KERNEL_STAT_H | |
3 | ||
24c4c341 | 4 | #include <sgidefs.h> |
e635cc8c AO |
5 | /* As tempting as it is to define XSTAT_IS_XSTAT64 for n64, the |
6 | userland data structures are not identical, because of different | |
7 | padding. */ | |
8 | /* Definition of `struct stat' used in the kernel. */ | |
73a227e2 | 9 | #if _MIPS_SIM != _ABIO32 |
ca2b264c AO |
10 | struct kernel_stat |
11 | { | |
12 | unsigned int st_dev; | |
13 | unsigned int __pad1[3]; | |
e635cc8c | 14 | unsigned long long st_ino; |
ca2b264c AO |
15 | unsigned int st_mode; |
16 | unsigned int st_nlink; | |
17 | int st_uid; | |
18 | int st_gid; | |
19 | unsigned int st_rdev; | |
20 | unsigned int __pad2[3]; | |
e635cc8c | 21 | long long st_size; |
d7f9cd89 DJ |
22 | unsigned int st_atime_sec; |
23 | unsigned int st_atime_nsec; | |
24 | unsigned int st_mtime_sec; | |
25 | unsigned int st_mtime_nsec; | |
26 | unsigned int st_ctime_sec; | |
27 | unsigned int st_ctime_nsec; | |
ca2b264c AO |
28 | unsigned int st_blksize; |
29 | unsigned int __pad3; | |
e635cc8c | 30 | unsigned long long st_blocks; |
ca2b264c AO |
31 | }; |
32 | #else | |
eec226c3 UD |
33 | struct kernel_stat |
34 | { | |
35 | unsigned long int st_dev; | |
36 | long int __pad1[3]; /* Reserved for network id */ | |
37 | unsigned long int st_ino; | |
38 | unsigned long int st_mode; | |
39 | unsigned long int st_nlink; | |
40 | long int st_uid; | |
41 | long int st_gid; | |
42 | unsigned long int st_rdev; | |
43 | long int __pad2[2]; | |
44 | long int st_size; | |
45 | long int __pad3; | |
d7f9cd89 DJ |
46 | unsigned int st_atime_sec; |
47 | unsigned int st_atime_nsec; | |
48 | unsigned int st_mtime_sec; | |
49 | unsigned int st_mtime_nsec; | |
50 | unsigned int st_ctime_sec; | |
51 | unsigned int st_ctime_nsec; | |
eec226c3 UD |
52 | long int st_blksize; |
53 | long int st_blocks; | |
54 | char st_fstype[16]; /* Filesystem type name, unsupported */ | |
55 | long st_pad4[8]; | |
56 | /* Linux specific fields */ | |
57 | unsigned int st_flags; | |
58 | unsigned int st_gen; | |
59 | }; | |
ca2b264c | 60 | #endif |
d2e1e973 | 61 | |
90e1600f | 62 | #define STAT_IS_KERNEL_STAT 0 |
0b1c222c | 63 | #define STAT64_IS_KERNEL_STAT64 0 |
d2e1e973 | 64 | #define XSTAT_IS_XSTAT64 0 |
4b221ec9 AZ |
65 | #if _MIPS_SIM == _ABI64 |
66 | # define STATFS_IS_STATFS64 1 | |
67 | #else | |
68 | # define STATFS_IS_STATFS64 0 | |
69 | #endif | |
5b980d48 AZ |
70 | /* MIPS64 has unsigned 32 bit timestamps fields, so use statx as well. */ |
71 | #if _MIPS_SIM == _ABI64 | |
72 | # define STAT_HAS_TIME32 | |
73 | #endif | |
0b1c222c AZ |
74 | |
75 | #endif |