[MIPS] Fix smp barriers in test_and_{change,clear,set}_bit
[linux-2.6] / include / asm-mips / statfs.h
1 /*
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
18 typedef __kernel_fsid_t        fsid_t;
19
20 #endif
21
22 struct 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;
36         long            f_spare[6];
37 };
38
39 #if (_MIPS_SIM == _MIPS_SIM_ABI32) || (_MIPS_SIM == _MIPS_SIM_NABI32)
40
41 /*
42  * Unlike the traditional version the LFAPI version has none of the ABI junk
43  */
44 struct statfs64 {
45         __u32   f_type;
46         __u32   f_bsize;
47         __u32   f_frsize;       /* Fragment size - unsupported */
48         __u32   __pad;
49         __u64   f_blocks;
50         __u64   f_bfree;
51         __u64   f_files;
52         __u64   f_ffree;
53         __u64   f_bavail;
54         __kernel_fsid_t f_fsid;
55         __u32   f_namelen;
56         __u32   f_spare[6];
57 };
58
59 #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
60
61 #if _MIPS_SIM == _MIPS_SIM_ABI64
62
63 struct statfs64 {                       /* Same as struct statfs */
64         long            f_type;
65         long            f_bsize;
66         long            f_frsize;       /* Fragment size - unsupported */
67         long            f_blocks;
68         long            f_bfree;
69         long            f_files;
70         long            f_ffree;
71         long            f_bavail;
72
73         /* Linux specials */
74         __kernel_fsid_t f_fsid;
75         long            f_namelen;
76         long            f_spare[6];
77 };
78
79 struct compat_statfs64 {
80         __u32   f_type;
81         __u32   f_bsize;
82         __u32   f_frsize;       /* Fragment size - unsupported */
83         __u32   __pad;
84         __u64   f_blocks;
85         __u64   f_bfree;
86         __u64   f_files;
87         __u64   f_ffree;
88         __u64   f_bavail;
89         __kernel_fsid_t f_fsid;
90         __u32   f_namelen;
91         __u32   f_spare[6];
92 };
93
94 #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */
95
96 #endif /* _ASM_STATFS_H */