~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/mips/include/uapi/asm/stat.h

Version: ~ [ linux-5.15-rc1 ] ~ [ linux-5.14.5 ] ~ [ linux-5.13.18 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.66 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.147 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.206 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.246 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.282 ] ~ [ linux-4.8.17 ] ~ [ linux-4.7.10 ] ~ [ linux-4.6.7 ] ~ [ linux-4.5.7 ] ~ [ linux-4.4.283 ] ~ [ linux-4.3.6 ] ~ [ linux-4.2.8 ] ~ [ linux-4.1.52 ] ~ [ linux-4.0.9 ] ~ [ linux-3.18.140 ] ~ [ linux-3.16.85 ] ~ [ linux-3.14.79 ] ~ [ linux-3.12.74 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.5 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
  2 /*
  3  * This file is subject to the terms and conditions of the GNU General Public
  4  * License.  See the file "COPYING" in the main directory of this archive
  5  * for more details.
  6  *
  7  * Copyright (C) 1995, 1999, 2000 Ralf Baechle
  8  * Copyright (C) 2000 Silicon Graphics, Inc.
  9  */
 10 #ifndef _ASM_STAT_H
 11 #define _ASM_STAT_H
 12 
 13 #include <linux/types.h>
 14 
 15 #include <asm/sgidefs.h>
 16 
 17 #if (_MIPS_SIM == _MIPS_SIM_ABI32) || (_MIPS_SIM == _MIPS_SIM_NABI32)
 18 
 19 struct stat {
 20         unsigned        st_dev;
 21         long            st_pad1[3];             /* Reserved for network id */
 22         ino_t           st_ino;
 23         mode_t          st_mode;
 24         __u32           st_nlink;
 25         uid_t           st_uid;
 26         gid_t           st_gid;
 27         unsigned        st_rdev;
 28         long            st_pad2[2];
 29         off_t           st_size;
 30         long            st_pad3;
 31         /*
 32          * Actually this should be timestruc_t st_atime, st_mtime and st_ctime
 33          * but we don't have it under Linux.
 34          */
 35         time_t          st_atime;
 36         long            st_atime_nsec;
 37         time_t          st_mtime;
 38         long            st_mtime_nsec;
 39         time_t          st_ctime;
 40         long            st_ctime_nsec;
 41         long            st_blksize;
 42         long            st_blocks;
 43         long            st_pad4[14];
 44 };
 45 
 46 /*
 47  * This matches struct stat64 in glibc2.1, hence the absolutely insane
 48  * amounts of padding around dev_t's.  The memory layout is the same as of
 49  * struct stat of the 64-bit kernel.
 50  */
 51 
 52 struct stat64 {
 53         unsigned long   st_dev;
 54         unsigned long   st_pad0[3];     /* Reserved for st_dev expansion  */
 55 
 56         unsigned long long      st_ino;
 57 
 58         mode_t          st_mode;
 59         __u32           st_nlink;
 60 
 61         uid_t           st_uid;
 62         gid_t           st_gid;
 63 
 64         unsigned long   st_rdev;
 65         unsigned long   st_pad1[3];     /* Reserved for st_rdev expansion  */
 66 
 67         long long       st_size;
 68 
 69         /*
 70          * Actually this should be timestruc_t st_atime, st_mtime and st_ctime
 71          * but we don't have it under Linux.
 72          */
 73         time_t          st_atime;
 74         unsigned long   st_atime_nsec;  /* Reserved for st_atime expansion  */
 75 
 76         time_t          st_mtime;
 77         unsigned long   st_mtime_nsec;  /* Reserved for st_mtime expansion  */
 78 
 79         time_t          st_ctime;
 80         unsigned long   st_ctime_nsec;  /* Reserved for st_ctime expansion  */
 81 
 82         unsigned long   st_blksize;
 83         unsigned long   st_pad2;
 84 
 85         long long       st_blocks;
 86 };
 87 
 88 #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
 89 
 90 #if _MIPS_SIM == _MIPS_SIM_ABI64
 91 
 92 /* The memory layout is the same as of struct stat64 of the 32-bit kernel.  */
 93 struct stat {
 94         unsigned int            st_dev;
 95         unsigned int            st_pad0[3]; /* Reserved for st_dev expansion */
 96 
 97         unsigned long           st_ino;
 98 
 99         mode_t                  st_mode;
100         __u32                   st_nlink;
101 
102         uid_t                   st_uid;
103         gid_t                   st_gid;
104 
105         unsigned int            st_rdev;
106         unsigned int            st_pad1[3]; /* Reserved for st_rdev expansion */
107 
108         off_t                   st_size;
109 
110         /*
111          * Actually this should be timestruc_t st_atime, st_mtime and st_ctime
112          * but we don't have it under Linux.
113          */
114         unsigned int            st_atime;
115         unsigned int            st_atime_nsec;
116 
117         unsigned int            st_mtime;
118         unsigned int            st_mtime_nsec;
119 
120         unsigned int            st_ctime;
121         unsigned int            st_ctime_nsec;
122 
123         unsigned int            st_blksize;
124         unsigned int            st_pad2;
125 
126         unsigned long           st_blocks;
127 };
128 
129 #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */
130 
131 #define STAT_HAVE_NSEC 1
132 
133 #endif /* _ASM_STAT_H */
134 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | Wiki (Japanese) | Wiki (English) | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

osdn.jp