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