Linux-2.6.12-rc2
[linux-flexiantxendom0-natty.git] / include / asm-sh64 / stat.h
1 #ifndef __ASM_SH64_STAT_H
2 #define __ASM_SH64_STAT_H
3
4 /*
5  * This file is subject to the terms and conditions of the GNU General Public
6  * License.  See the file "COPYING" in the main directory of this archive
7  * for more details.
8  *
9  * include/asm-sh64/stat.h
10  *
11  * Copyright (C) 2000, 2001  Paolo Alberelli
12  *
13  */
14
15 struct __old_kernel_stat {
16         unsigned short st_dev;
17         unsigned short st_ino;
18         unsigned short st_mode;
19         unsigned short st_nlink;
20         unsigned short st_uid;
21         unsigned short st_gid;
22         unsigned short st_rdev;
23         unsigned long  st_size;
24         unsigned long  st_atime;
25         unsigned long  st_mtime;
26         unsigned long  st_ctime;
27 };
28
29 struct stat {
30         unsigned short st_dev;
31         unsigned short __pad1;
32         unsigned long st_ino;
33         unsigned short st_mode;
34         unsigned short st_nlink;
35         unsigned short st_uid;
36         unsigned short st_gid;
37         unsigned short st_rdev;
38         unsigned short __pad2;
39         unsigned long  st_size;
40         unsigned long  st_blksize;
41         unsigned long  st_blocks;
42         unsigned long  st_atime;
43         unsigned long  st_atime_nsec;
44         unsigned long  st_mtime;
45         unsigned long  st_mtime_nsec;
46         unsigned long  st_ctime;
47         unsigned long  st_ctime_nsec;
48         unsigned long  __unused4;
49         unsigned long  __unused5;
50 };
51
52 /* This matches struct stat64 in glibc2.1, hence the absolutely
53  * insane amounts of padding around dev_t's.
54  */
55 struct stat64 {
56         unsigned short  st_dev;
57         unsigned char   __pad0[10];
58
59         unsigned long   st_ino;
60         unsigned int    st_mode;
61         unsigned int    st_nlink;
62
63         unsigned long   st_uid;
64         unsigned long   st_gid;
65
66         unsigned short  st_rdev;
67         unsigned char   __pad3[10];
68
69         long long       st_size;
70         unsigned long   st_blksize;
71
72         unsigned long   st_blocks;      /* Number 512-byte blocks allocated. */
73         unsigned long   __pad4;         /* future possible st_blocks high bits */
74
75         unsigned long   st_atime;
76         unsigned long   st_atime_nsec;
77
78         unsigned long   st_mtime;
79         unsigned long   st_mtime_nsec;
80
81         unsigned long   st_ctime;
82         unsigned long   st_ctime_nsec;  /* will be high 32 bits of ctime someday */
83
84         unsigned long   __unused1;
85         unsigned long   __unused2;
86 };
87
88 #endif /* __ASM_SH64_STAT_H */