aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/mips/kernel_stat.h
blob: 19524f7ea4421d0261ca2c04affcdf4806ec4559 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#ifndef _KERNEL_STAT_H
#define _KERNEL_STAT_H

#include <sgidefs.h>
/* As tempting as it is to define XSTAT_IS_XSTAT64 for n64, the
   userland data structures are not identical, because of different
   padding.  */
/* Definition of `struct stat' used in the kernel.  */
#if _MIPS_SIM != _ABIO32
struct kernel_stat
  {
    unsigned int st_dev;
    unsigned int __pad1[3];
    unsigned long long st_ino;
    unsigned int st_mode;
    unsigned int st_nlink;
    int st_uid;
    int st_gid;
    unsigned int st_rdev;
    unsigned int __pad2[3];
    long long st_size;
    unsigned int st_atime_sec;
    unsigned int st_atime_nsec;
    unsigned int st_mtime_sec;
    unsigned int st_mtime_nsec;
    unsigned int st_ctime_sec;
    unsigned int st_ctime_nsec;
    unsigned int st_blksize;
    unsigned int __pad3;
    unsigned long long st_blocks;
  };
#else
struct kernel_stat
  {
    unsigned long int st_dev;
    long int __pad1[3];			/* Reserved for network id */
    unsigned long int st_ino;
    unsigned long int st_mode;
    unsigned long int st_nlink;
    long int st_uid;
    long int st_gid;
    unsigned long int st_rdev;
    long int __pad2[2];
    long int st_size;
    long int __pad3;
    unsigned int st_atime_sec;
    unsigned int st_atime_nsec;
    unsigned int st_mtime_sec;
    unsigned int st_mtime_nsec;
    unsigned int st_ctime_sec;
    unsigned int st_ctime_nsec;
    long int st_blksize;
    long int st_blocks;
    char st_fstype[16];			/* Filesystem type name, unsupported */
    long st_pad4[8];
    /* Linux specific fields */
    unsigned int st_flags;
    unsigned int st_gen;
  };
#endif

#define STAT_IS_KERNEL_STAT 0
#define STAT64_IS_KERNEL_STAT64 0
#define XSTAT_IS_XSTAT64 0
#if _MIPS_SIM == _ABI64
# define STATFS_IS_STATFS64 1
#else
# define STATFS_IS_STATFS64 0
#endif
/* MIPS64 has unsigned 32 bit timestamps fields, so use statx as well.  */
#if _MIPS_SIM == _ABI64
# define STAT_HAS_TIME32
#endif

#endif