arch/x86/include/asm/stat.h
changeset 0 aa628870c1d3
equal deleted inserted replaced
-1:000000000000 0:aa628870c1d3
       
     1 #ifndef _ASM_X86_STAT_H
       
     2 #define _ASM_X86_STAT_H
       
     3 
       
     4 #define STAT_HAVE_NSEC 1
       
     5 
       
     6 #ifdef __i386__
       
     7 struct stat {
       
     8 	unsigned long  st_dev;
       
     9 	unsigned long  st_ino;
       
    10 	unsigned short st_mode;
       
    11 	unsigned short st_nlink;
       
    12 	unsigned short st_uid;
       
    13 	unsigned short st_gid;
       
    14 	unsigned long  st_rdev;
       
    15 	unsigned long  st_size;
       
    16 	unsigned long  st_blksize;
       
    17 	unsigned long  st_blocks;
       
    18 	unsigned long  st_atime;
       
    19 	unsigned long  st_atime_nsec;
       
    20 	unsigned long  st_mtime;
       
    21 	unsigned long  st_mtime_nsec;
       
    22 	unsigned long  st_ctime;
       
    23 	unsigned long  st_ctime_nsec;
       
    24 	unsigned long  __unused4;
       
    25 	unsigned long  __unused5;
       
    26 };
       
    27 
       
    28 #define STAT64_HAS_BROKEN_ST_INO	1
       
    29 
       
    30 /* This matches struct stat64 in glibc2.1, hence the absolutely
       
    31  * insane amounts of padding around dev_t's.
       
    32  */
       
    33 struct stat64 {
       
    34 	unsigned long long	st_dev;
       
    35 	unsigned char	__pad0[4];
       
    36 
       
    37 	unsigned long	__st_ino;
       
    38 
       
    39 	unsigned int	st_mode;
       
    40 	unsigned int	st_nlink;
       
    41 
       
    42 	unsigned long	st_uid;
       
    43 	unsigned long	st_gid;
       
    44 
       
    45 	unsigned long long	st_rdev;
       
    46 	unsigned char	__pad3[4];
       
    47 
       
    48 	long long	st_size;
       
    49 	unsigned long	st_blksize;
       
    50 
       
    51 	/* Number 512-byte blocks allocated. */
       
    52 	unsigned long long	st_blocks;
       
    53 
       
    54 	unsigned long	st_atime;
       
    55 	unsigned long	st_atime_nsec;
       
    56 
       
    57 	unsigned long	st_mtime;
       
    58 	unsigned int	st_mtime_nsec;
       
    59 
       
    60 	unsigned long	st_ctime;
       
    61 	unsigned long	st_ctime_nsec;
       
    62 
       
    63 	unsigned long long	st_ino;
       
    64 };
       
    65 
       
    66 #else /* __i386__ */
       
    67 
       
    68 struct stat {
       
    69 	unsigned long	st_dev;
       
    70 	unsigned long	st_ino;
       
    71 	unsigned long	st_nlink;
       
    72 
       
    73 	unsigned int	st_mode;
       
    74 	unsigned int	st_uid;
       
    75 	unsigned int	st_gid;
       
    76 	unsigned int	__pad0;
       
    77 	unsigned long	st_rdev;
       
    78 	long		st_size;
       
    79 	long		st_blksize;
       
    80 	long		st_blocks;	/* Number 512-byte blocks allocated. */
       
    81 
       
    82 	unsigned long	st_atime;
       
    83 	unsigned long	st_atime_nsec;
       
    84 	unsigned long	st_mtime;
       
    85 	unsigned long	st_mtime_nsec;
       
    86 	unsigned long	st_ctime;
       
    87 	unsigned long   st_ctime_nsec;
       
    88 	long		__unused[3];
       
    89 };
       
    90 #endif
       
    91 
       
    92 /* for 32bit emulation and 32 bit kernels */
       
    93 struct __old_kernel_stat {
       
    94 	unsigned short st_dev;
       
    95 	unsigned short st_ino;
       
    96 	unsigned short st_mode;
       
    97 	unsigned short st_nlink;
       
    98 	unsigned short st_uid;
       
    99 	unsigned short st_gid;
       
   100 	unsigned short st_rdev;
       
   101 #ifdef __i386__
       
   102 	unsigned long  st_size;
       
   103 	unsigned long  st_atime;
       
   104 	unsigned long  st_mtime;
       
   105 	unsigned long  st_ctime;
       
   106 #else
       
   107 	unsigned int  st_size;
       
   108 	unsigned int  st_atime;
       
   109 	unsigned int  st_mtime;
       
   110 	unsigned int  st_ctime;
       
   111 #endif
       
   112 };
       
   113 
       
   114 #endif /* _ASM_X86_STAT_H */