Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
[cris-mirror.git] / arch / frv / include / uapi / asm / stat.h
blob0ff9fab915a49681e511dbda3a46ce6c81b69edb
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _ASM_STAT_H
3 #define _ASM_STAT_H
5 struct __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;
19 /* This matches struct stat in uClibc/glibc. */
20 struct stat {
21 unsigned char __pad1[6];
22 unsigned short st_dev;
24 unsigned long __pad2;
25 unsigned long st_ino;
27 unsigned short __pad3;
28 unsigned short st_mode;
29 unsigned short __pad4;
30 unsigned short st_nlink;
32 unsigned short __pad5;
33 unsigned short st_uid;
34 unsigned short __pad6;
35 unsigned short st_gid;
37 unsigned char __pad7[6];
38 unsigned short st_rdev;
40 unsigned long __pad8;
41 unsigned long st_size;
43 unsigned long __pad9; /* align 64-bit st_blocks to 2-word */
44 unsigned long st_blksize;
46 unsigned long __pad10; /* future possible st_blocks high bits */
47 unsigned long st_blocks; /* Number 512-byte blocks allocated. */
49 unsigned long __unused1;
50 unsigned long st_atime;
52 unsigned long __unused2;
53 unsigned long st_mtime;
55 unsigned long __unused3;
56 unsigned long st_ctime;
58 unsigned long long __unused4;
61 /* This matches struct stat64 in uClibc/glibc. The layout is exactly
62 the same as that of struct stat above, with 64-bit types taking up
63 space that was formerly used by padding. stat syscalls are still
64 different from stat64, though, in that the former tests for
65 overflow. */
66 struct stat64 {
67 unsigned char __pad1[6];
68 unsigned short st_dev;
70 unsigned long long st_ino;
72 unsigned int st_mode;
73 unsigned int st_nlink;
75 unsigned long st_uid;
76 unsigned long st_gid;
78 unsigned char __pad2[6];
79 unsigned short st_rdev;
81 long long st_size;
83 unsigned long __pad3; /* align 64-bit st_blocks to 2-word */
84 unsigned long st_blksize;
86 unsigned long __pad4; /* future possible st_blocks high bits */
87 unsigned long st_blocks; /* Number 512-byte blocks allocated. */
89 unsigned long st_atime_nsec;
90 unsigned long st_atime;
92 unsigned int st_mtime_nsec;
93 unsigned long st_mtime;
95 unsigned long st_ctime_nsec;
96 unsigned long st_ctime;
98 unsigned long long __unused4;
101 #endif /* _ASM_STAT_H */