1e2be04c7SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 261730c53SDavid Howells /* 361730c53SDavid Howells * This file is subject to the terms and conditions of the GNU General Public 461730c53SDavid Howells * License. See the file "COPYING" in the main directory of this archive 561730c53SDavid Howells * for more details. 661730c53SDavid Howells * 761730c53SDavid Howells * Copyright (C) 1995, 1999 by Ralf Baechle 861730c53SDavid Howells */ 961730c53SDavid Howells #ifndef _ASM_STATFS_H 1061730c53SDavid Howells #define _ASM_STATFS_H 1161730c53SDavid Howells 1261730c53SDavid Howells #include <linux/posix_types.h> 1361730c53SDavid Howells #include <asm/sgidefs.h> 1461730c53SDavid Howells 1561730c53SDavid Howells #ifndef __KERNEL_STRICT_NAMES 1661730c53SDavid Howells 1761730c53SDavid Howells #include <linux/types.h> 1861730c53SDavid Howells 1961730c53SDavid Howells typedef __kernel_fsid_t fsid_t; 2061730c53SDavid Howells 2161730c53SDavid Howells #endif 2261730c53SDavid Howells 2361730c53SDavid Howells struct statfs { 2461730c53SDavid Howells long f_type; 2561730c53SDavid Howells #define f_fstyp f_type 2661730c53SDavid Howells long f_bsize; 2761730c53SDavid Howells long f_frsize; /* Fragment size - unsupported */ 2861730c53SDavid Howells long f_blocks; 2961730c53SDavid Howells long f_bfree; 3061730c53SDavid Howells long f_files; 3161730c53SDavid Howells long f_ffree; 3261730c53SDavid Howells long f_bavail; 3361730c53SDavid Howells 3461730c53SDavid Howells /* Linux specials */ 3561730c53SDavid Howells __kernel_fsid_t f_fsid; 3661730c53SDavid Howells long f_namelen; 3761730c53SDavid Howells long f_flags; 3861730c53SDavid Howells long f_spare[5]; 3961730c53SDavid Howells }; 4061730c53SDavid Howells 4161730c53SDavid Howells #if (_MIPS_SIM == _MIPS_SIM_ABI32) || (_MIPS_SIM == _MIPS_SIM_NABI32) 4261730c53SDavid Howells 4361730c53SDavid Howells /* 4461730c53SDavid Howells * Unlike the traditional version the LFAPI version has none of the ABI junk 4561730c53SDavid Howells */ 4661730c53SDavid Howells struct statfs64 { 4761730c53SDavid Howells __u32 f_type; 4861730c53SDavid Howells __u32 f_bsize; 4961730c53SDavid Howells __u32 f_frsize; /* Fragment size - unsupported */ 5061730c53SDavid Howells __u32 __pad; 5161730c53SDavid Howells __u64 f_blocks; 5261730c53SDavid Howells __u64 f_bfree; 5361730c53SDavid Howells __u64 f_files; 5461730c53SDavid Howells __u64 f_ffree; 5561730c53SDavid Howells __u64 f_bavail; 5661730c53SDavid Howells __kernel_fsid_t f_fsid; 5761730c53SDavid Howells __u32 f_namelen; 5861730c53SDavid Howells __u32 f_flags; 5961730c53SDavid Howells __u32 f_spare[5]; 6061730c53SDavid Howells }; 6161730c53SDavid Howells 6261730c53SDavid Howells #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */ 6361730c53SDavid Howells 6461730c53SDavid Howells #if _MIPS_SIM == _MIPS_SIM_ABI64 6561730c53SDavid Howells 6661730c53SDavid Howells struct statfs64 { /* Same as struct statfs */ 6761730c53SDavid Howells long f_type; 6861730c53SDavid Howells long f_bsize; 6961730c53SDavid Howells long f_frsize; /* Fragment size - unsupported */ 7061730c53SDavid Howells long f_blocks; 7161730c53SDavid Howells long f_bfree; 7261730c53SDavid Howells long f_files; 7361730c53SDavid Howells long f_ffree; 7461730c53SDavid Howells long f_bavail; 7561730c53SDavid Howells 7661730c53SDavid Howells /* Linux specials */ 7761730c53SDavid Howells __kernel_fsid_t f_fsid; 7861730c53SDavid Howells long f_namelen; 7961730c53SDavid Howells long f_flags; 8061730c53SDavid Howells long f_spare[5]; 8161730c53SDavid Howells }; 8261730c53SDavid Howells 8361730c53SDavid Howells struct compat_statfs64 { 8461730c53SDavid Howells __u32 f_type; 8561730c53SDavid Howells __u32 f_bsize; 8661730c53SDavid Howells __u32 f_frsize; /* Fragment size - unsupported */ 8761730c53SDavid Howells __u32 __pad; 8861730c53SDavid Howells __u64 f_blocks; 8961730c53SDavid Howells __u64 f_bfree; 9061730c53SDavid Howells __u64 f_files; 9161730c53SDavid Howells __u64 f_ffree; 9261730c53SDavid Howells __u64 f_bavail; 9361730c53SDavid Howells __kernel_fsid_t f_fsid; 9461730c53SDavid Howells __u32 f_namelen; 9561730c53SDavid Howells __u32 f_flags; 9661730c53SDavid Howells __u32 f_spare[5]; 9761730c53SDavid Howells }; 9861730c53SDavid Howells 9961730c53SDavid Howells #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */ 10061730c53SDavid Howells 10161730c53SDavid Howells #endif /* _ASM_STATFS_H */ 102