Loading...
1#ifndef _PARISC_STAT_H
2#define _PARISC_STAT_H
3
4#include <linux/types.h>
5
6struct stat {
7 unsigned int st_dev; /* dev_t is 32 bits on parisc */
8 unsigned int st_ino; /* 32 bits */
9 unsigned short st_mode; /* 16 bits */
10 unsigned short st_nlink; /* 16 bits */
11 unsigned short st_reserved1; /* old st_uid */
12 unsigned short st_reserved2; /* old st_gid */
13 unsigned int st_rdev;
14 signed int st_size;
15 signed int st_atime;
16 unsigned int st_atime_nsec;
17 signed int st_mtime;
18 unsigned int st_mtime_nsec;
19 signed int st_ctime;
20 unsigned int st_ctime_nsec;
21 int st_blksize;
22 int st_blocks;
23 unsigned int __unused1; /* ACL stuff */
24 unsigned int __unused2; /* network */
25 unsigned int __unused3; /* network */
26 unsigned int __unused4; /* cnodes */
27 unsigned short __unused5; /* netsite */
28 short st_fstype;
29 unsigned int st_realdev;
30 unsigned short st_basemode;
31 unsigned short st_spareshort;
32 unsigned int st_uid;
33 unsigned int st_gid;
34 unsigned int st_spare4[3];
35};
36
37#define STAT_HAVE_NSEC
38
39/* This is the struct that 32-bit userspace applications are expecting.
40 * How 64-bit apps are going to be compiled, I have no idea. But at least
41 * this way, we don't have a wrapper in the kernel.
42 */
43struct stat64 {
44 unsigned long long st_dev;
45 unsigned int __pad1;
46
47 unsigned int __st_ino; /* Not actually filled in */
48 unsigned int st_mode;
49 unsigned int st_nlink;
50 unsigned int st_uid;
51 unsigned int st_gid;
52 unsigned long long st_rdev;
53 unsigned int __pad2;
54 signed long long st_size;
55 signed int st_blksize;
56
57 signed long long st_blocks;
58 signed int st_atime;
59 unsigned int st_atime_nsec;
60 signed int st_mtime;
61 unsigned int st_mtime_nsec;
62 signed int st_ctime;
63 unsigned int st_ctime_nsec;
64 unsigned long long st_ino;
65};
66
67#endif