Home | History | Annotate | Download | only in asm
      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 by Ralf Baechle
      8  */
      9 #ifndef _ASM_STATFS_H
     10 #define _ASM_STATFS_H
     11 
     12 #include <linux/posix_types.h>
     13 #include <asm/sgidefs.h>
     14 
     15 #ifndef __KERNEL_STRICT_NAMES
     16 
     17 #include <linux/types.h>
     18 
     19 typedef __kernel_fsid_t	       fsid_t;
     20 
     21 #endif
     22 
     23 struct statfs {
     24 	long		f_type;
     25 #define f_fstyp f_type
     26 	long		f_bsize;
     27 	long		f_frsize;	/* Fragment size - unsupported */
     28 	long		f_blocks;
     29 	long		f_bfree;
     30 	long		f_files;
     31 	long		f_ffree;
     32 	long		f_bavail;
     33 
     34 	/* Linux specials */
     35 	__kernel_fsid_t f_fsid;
     36 	long		f_namelen;
     37 	long		f_flags;
     38 	long		f_spare[5];
     39 };
     40 
     41 #if (_MIPS_SIM == _MIPS_SIM_ABI32) || (_MIPS_SIM == _MIPS_SIM_NABI32)
     42 
     43 /*
     44  * Unlike the traditional version the LFAPI version has none of the ABI junk
     45  */
     46 struct statfs64 {
     47 	__u32	f_type;
     48 	__u32	f_bsize;
     49 	__u32	f_frsize;	/* Fragment size - unsupported */
     50 	__u32	__pad;
     51 	__u64	f_blocks;
     52 	__u64	f_bfree;
     53 	__u64	f_files;
     54 	__u64	f_ffree;
     55 	__u64	f_bavail;
     56 	__kernel_fsid_t f_fsid;
     57 	__u32	f_namelen;
     58 	__u32	f_flags;
     59 	__u32	f_spare[5];
     60 };
     61 
     62 #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
     63 
     64 #if _MIPS_SIM == _MIPS_SIM_ABI64
     65 
     66 struct statfs64 {			/* Same as struct statfs */
     67 	long		f_type;
     68 	long		f_bsize;
     69 	long		f_frsize;	/* Fragment size - unsupported */
     70 	long		f_blocks;
     71 	long		f_bfree;
     72 	long		f_files;
     73 	long		f_ffree;
     74 	long		f_bavail;
     75 
     76 	/* Linux specials */
     77 	__kernel_fsid_t f_fsid;
     78 	long		f_namelen;
     79 	long		f_flags;
     80 	long		f_spare[5];
     81 };
     82 
     83 struct compat_statfs64 {
     84 	__u32	f_type;
     85 	__u32	f_bsize;
     86 	__u32	f_frsize;	/* Fragment size - unsupported */
     87 	__u32	__pad;
     88 	__u64	f_blocks;
     89 	__u64	f_bfree;
     90 	__u64	f_files;
     91 	__u64	f_ffree;
     92 	__u64	f_bavail;
     93 	__kernel_fsid_t f_fsid;
     94 	__u32	f_namelen;
     95 	__u32	f_flags;
     96 	__u32	f_spare[5];
     97 };
     98 
     99 #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */
    100 
    101 #endif /* _ASM_STATFS_H */
    102