Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
stat.h
Go to the documentation of this file.
1 #ifndef _CRIS_STAT_H
2 #define _CRIS_STAT_H
3 
4 /* Keep this a verbatim copy of i386 version; tweak CRIS-specific bits in
5  the kernel if necessary. */
6 
7 struct __old_kernel_stat {
8  unsigned short st_dev;
9  unsigned short st_ino;
10  unsigned short st_mode;
11  unsigned short st_nlink;
12  unsigned short st_uid;
13  unsigned short st_gid;
14  unsigned short st_rdev;
15  unsigned long st_size;
16  unsigned long st_atime;
17  unsigned long st_mtime;
18  unsigned long st_ctime;
19 };
20 
21 #define STAT_HAVE_NSEC 1
22 
23 struct stat {
24  unsigned long st_dev;
25  unsigned long st_ino;
26  unsigned short st_mode;
27  unsigned short st_nlink;
28  unsigned short st_uid;
29  unsigned short st_gid;
30  unsigned long st_rdev;
31  unsigned long st_size;
32  unsigned long st_blksize;
33  unsigned long st_blocks;
34  unsigned long st_atime;
35  unsigned long st_atime_nsec;
36  unsigned long st_mtime;
37  unsigned long st_mtime_nsec;
38  unsigned long st_ctime;
39  unsigned long st_ctime_nsec;
40  unsigned long __unused4;
41  unsigned long __unused5;
42 };
43 
44 /* This matches struct stat64 in glibc2.1, hence the absolutely
45  * insane amounts of padding around dev_t's.
46  */
47 struct stat64 {
48  unsigned long long st_dev;
49  unsigned char __pad0[4];
50 
51 #define STAT64_HAS_BROKEN_ST_INO 1
52  unsigned long __st_ino;
53 
54  unsigned int st_mode;
55  unsigned int st_nlink;
56 
57  unsigned long st_uid;
58  unsigned long st_gid;
59 
60  unsigned long long st_rdev;
61  unsigned char __pad3[4];
62 
63  long long st_size;
64  unsigned long st_blksize;
65 
66  unsigned long st_blocks; /* Number 512-byte blocks allocated. */
67  unsigned long __pad4; /* future possible st_blocks high bits */
68 
69  unsigned long st_atime;
70  unsigned long st_atime_nsec;
71 
72  unsigned long st_mtime;
73  unsigned long st_mtime_nsec;
74 
75  unsigned long st_ctime;
76  unsigned long st_ctime_nsec; /* will be high 32 bits of ctime someday */
77 
78  unsigned long long st_ino;
79 };
80 
81 #endif