• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ***   To edit the content of this header, modify the corresponding
11  ***   source file (e.g. under external/kernel-headers/original/) then
12  ***   run bionic/libc/kernel/tools/update_all.py
13  ***
14  ***   Any manual change here will be lost the next time this script will
15  ***   be run. You've been warned!
16  ***
17  ****************************************************************************
18  ****************************************************************************/
19 #ifndef _ASM_X86_STAT_H
20 #define _ASM_X86_STAT_H
21 #include <asm/posix_types.h>
22 #define STAT_HAVE_NSEC 1
23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24 #ifdef __i386__
25 struct stat {
26   unsigned long st_dev;
27   unsigned long st_ino;
28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29   unsigned short st_mode;
30   unsigned short st_nlink;
31   unsigned short st_uid;
32   unsigned short st_gid;
33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34   unsigned long st_rdev;
35   unsigned long st_size;
36   unsigned long st_blksize;
37   unsigned long st_blocks;
38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39   unsigned long st_atime;
40   unsigned long st_atime_nsec;
41   unsigned long st_mtime;
42   unsigned long st_mtime_nsec;
43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44   unsigned long st_ctime;
45   unsigned long st_ctime_nsec;
46   unsigned long __unused4;
47   unsigned long __unused5;
48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49 };
50 #define INIT_STRUCT_STAT_PADDING(st) do { st.__unused4 = 0; st.__unused5 = 0; \
51 } while(0)
52 #define STAT64_HAS_BROKEN_ST_INO 1
53 struct stat64 {
54 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
55   unsigned long long st_dev;
56   unsigned char __pad0[4];
57   unsigned long __st_ino;
58   unsigned int st_mode;
59 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
60   unsigned int st_nlink;
61   unsigned long st_uid;
62   unsigned long st_gid;
63   unsigned long long st_rdev;
64 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
65   unsigned char __pad3[4];
66   long long st_size;
67   unsigned long st_blksize;
68   unsigned long long st_blocks;
69 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
70   unsigned long st_atime;
71   unsigned long st_atime_nsec;
72   unsigned long st_mtime;
73   unsigned int st_mtime_nsec;
74 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
75   unsigned long st_ctime;
76   unsigned long st_ctime_nsec;
77   unsigned long long st_ino;
78 };
79 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
80 #define INIT_STRUCT_STAT64_PADDING(st) do { memset(& st.__pad0, 0, sizeof(st.__pad0)); memset(& st.__pad3, 0, sizeof(st.__pad3)); \
81 } while(0)
82 #else
83 struct stat {
84   __kernel_ulong_t st_dev;
85 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
86   __kernel_ulong_t st_ino;
87   __kernel_ulong_t st_nlink;
88   unsigned int st_mode;
89   unsigned int st_uid;
90 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
91   unsigned int st_gid;
92   unsigned int __pad0;
93   __kernel_ulong_t st_rdev;
94   __kernel_long_t st_size;
95 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
96   __kernel_long_t st_blksize;
97   __kernel_long_t st_blocks;
98   __kernel_ulong_t st_atime;
99   __kernel_ulong_t st_atime_nsec;
100 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
101   __kernel_ulong_t st_mtime;
102   __kernel_ulong_t st_mtime_nsec;
103   __kernel_ulong_t st_ctime;
104   __kernel_ulong_t st_ctime_nsec;
105 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
106   __kernel_long_t __linux_unused[3];
107 };
108 #define INIT_STRUCT_STAT_PADDING(st) do { st.__pad0 = 0; st.__linux_unused[0] = 0; st.__linux_unused[1] = 0; st.__linux_unused[2] = 0; \
109 } while(0)
110 #endif
111 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
112 struct __old_kernel_stat {
113   unsigned short st_dev;
114   unsigned short st_ino;
115   unsigned short st_mode;
116 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
117   unsigned short st_nlink;
118   unsigned short st_uid;
119   unsigned short st_gid;
120   unsigned short st_rdev;
121 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
122 #ifdef __i386__
123   unsigned long st_size;
124   unsigned long st_atime;
125   unsigned long st_mtime;
126 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
127   unsigned long st_ctime;
128 #else
129   unsigned int st_size;
130   unsigned int st_atime;
131 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
132   unsigned int st_mtime;
133   unsigned int st_ctime;
134 #endif
135 };
136 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
137 #endif
138