linux/arch/x86/include/asm/stat.h
<<
>>
Prefs
   1#ifndef _ASM_X86_STAT_H
   2#define _ASM_X86_STAT_H
   3
   4#define STAT_HAVE_NSEC 1
   5
   6#ifdef __i386__
   7struct 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 */
  33struct 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
  68struct 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 */
  93struct __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 */
 115