1*53ee8cc1Swenshuai.xi /* 2*53ee8cc1Swenshuai.xi * This file is subject to the terms and conditions of the GNU General Public 3*53ee8cc1Swenshuai.xi * License. See the file "COPYING" in the main directory of this archive 4*53ee8cc1Swenshuai.xi * for more details. 5*53ee8cc1Swenshuai.xi * 6*53ee8cc1Swenshuai.xi * Copyright (C) 1995, 1999 by Ralf Baechle 7*53ee8cc1Swenshuai.xi */ 8*53ee8cc1Swenshuai.xi #ifndef _ASM_STATFS_H 9*53ee8cc1Swenshuai.xi #define _ASM_STATFS_H 10*53ee8cc1Swenshuai.xi 11*53ee8cc1Swenshuai.xi #include <linux/posix_types.h> 12*53ee8cc1Swenshuai.xi #include <asm/sgidefs.h> 13*53ee8cc1Swenshuai.xi 14*53ee8cc1Swenshuai.xi #ifndef __KERNEL_STRICT_NAMES 15*53ee8cc1Swenshuai.xi 16*53ee8cc1Swenshuai.xi #include <linux/types.h> 17*53ee8cc1Swenshuai.xi 18*53ee8cc1Swenshuai.xi typedef __kernel_fsid_t fsid_t; 19*53ee8cc1Swenshuai.xi 20*53ee8cc1Swenshuai.xi #endif 21*53ee8cc1Swenshuai.xi 22*53ee8cc1Swenshuai.xi struct statfs { 23*53ee8cc1Swenshuai.xi long f_type; 24*53ee8cc1Swenshuai.xi #define f_fstyp f_type 25*53ee8cc1Swenshuai.xi long f_bsize; 26*53ee8cc1Swenshuai.xi long f_frsize; /* Fragment size - unsupported */ 27*53ee8cc1Swenshuai.xi long f_blocks; 28*53ee8cc1Swenshuai.xi long f_bfree; 29*53ee8cc1Swenshuai.xi long f_files; 30*53ee8cc1Swenshuai.xi long f_ffree; 31*53ee8cc1Swenshuai.xi long f_bavail; 32*53ee8cc1Swenshuai.xi 33*53ee8cc1Swenshuai.xi /* Linux specials */ 34*53ee8cc1Swenshuai.xi __kernel_fsid_t f_fsid; 35*53ee8cc1Swenshuai.xi long f_namelen; 36*53ee8cc1Swenshuai.xi long f_spare[6]; 37*53ee8cc1Swenshuai.xi }; 38*53ee8cc1Swenshuai.xi 39*53ee8cc1Swenshuai.xi #if (_MIPS_SIM == _MIPS_SIM_ABI32) || (_MIPS_SIM == _MIPS_SIM_NABI32) 40*53ee8cc1Swenshuai.xi 41*53ee8cc1Swenshuai.xi /* 42*53ee8cc1Swenshuai.xi * Unlike the traditional version the LFAPI version has none of the ABI junk 43*53ee8cc1Swenshuai.xi */ 44*53ee8cc1Swenshuai.xi struct statfs64 { 45*53ee8cc1Swenshuai.xi __u32 f_type; 46*53ee8cc1Swenshuai.xi __u32 f_bsize; 47*53ee8cc1Swenshuai.xi __u32 f_frsize; /* Fragment size - unsupported */ 48*53ee8cc1Swenshuai.xi __u32 __pad; 49*53ee8cc1Swenshuai.xi __u64 f_blocks; 50*53ee8cc1Swenshuai.xi __u64 f_bfree; 51*53ee8cc1Swenshuai.xi __u64 f_files; 52*53ee8cc1Swenshuai.xi __u64 f_ffree; 53*53ee8cc1Swenshuai.xi __u64 f_bavail; 54*53ee8cc1Swenshuai.xi __kernel_fsid_t f_fsid; 55*53ee8cc1Swenshuai.xi __u32 f_namelen; 56*53ee8cc1Swenshuai.xi __u32 f_spare[6]; 57*53ee8cc1Swenshuai.xi }; 58*53ee8cc1Swenshuai.xi 59*53ee8cc1Swenshuai.xi #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */ 60*53ee8cc1Swenshuai.xi 61*53ee8cc1Swenshuai.xi #if _MIPS_SIM == _MIPS_SIM_ABI64 62*53ee8cc1Swenshuai.xi 63*53ee8cc1Swenshuai.xi struct statfs64 { /* Same as struct statfs */ 64*53ee8cc1Swenshuai.xi long f_type; 65*53ee8cc1Swenshuai.xi long f_bsize; 66*53ee8cc1Swenshuai.xi long f_frsize; /* Fragment size - unsupported */ 67*53ee8cc1Swenshuai.xi long f_blocks; 68*53ee8cc1Swenshuai.xi long f_bfree; 69*53ee8cc1Swenshuai.xi long f_files; 70*53ee8cc1Swenshuai.xi long f_ffree; 71*53ee8cc1Swenshuai.xi long f_bavail; 72*53ee8cc1Swenshuai.xi 73*53ee8cc1Swenshuai.xi /* Linux specials */ 74*53ee8cc1Swenshuai.xi __kernel_fsid_t f_fsid; 75*53ee8cc1Swenshuai.xi long f_namelen; 76*53ee8cc1Swenshuai.xi long f_spare[6]; 77*53ee8cc1Swenshuai.xi }; 78*53ee8cc1Swenshuai.xi 79*53ee8cc1Swenshuai.xi struct compat_statfs64 { 80*53ee8cc1Swenshuai.xi __u32 f_type; 81*53ee8cc1Swenshuai.xi __u32 f_bsize; 82*53ee8cc1Swenshuai.xi __u32 f_frsize; /* Fragment size - unsupported */ 83*53ee8cc1Swenshuai.xi __u32 __pad; 84*53ee8cc1Swenshuai.xi __u64 f_blocks; 85*53ee8cc1Swenshuai.xi __u64 f_bfree; 86*53ee8cc1Swenshuai.xi __u64 f_files; 87*53ee8cc1Swenshuai.xi __u64 f_ffree; 88*53ee8cc1Swenshuai.xi __u64 f_bavail; 89*53ee8cc1Swenshuai.xi __kernel_fsid_t f_fsid; 90*53ee8cc1Swenshuai.xi __u32 f_namelen; 91*53ee8cc1Swenshuai.xi __u32 f_spare[6]; 92*53ee8cc1Swenshuai.xi }; 93*53ee8cc1Swenshuai.xi 94*53ee8cc1Swenshuai.xi #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */ 95*53ee8cc1Swenshuai.xi 96*53ee8cc1Swenshuai.xi #endif /* _ASM_STATFS_H */ 97