···1-#ifdef __KERNEL__2-# ifdef CONFIG_X86_323-# include "statfs_32.h"4-# else5-# include "statfs_64.h"6-# endif7#else8-# ifdef __i386__9-# include "statfs_32.h"10-# else11-# include "statfs_64.h"12-# endif00000000000000000000000000000000000000000000000000013#endif
···1+#ifndef _ASM_X86_STATFS_H2+#define _ASM_X86_STATFS_H3+4+#ifdef __i386__5+#include <asm-generic/statfs.h>06#else7+8+#ifndef __KERNEL_STRICT_NAMES9+10+#include <linux/types.h>11+12+typedef __kernel_fsid_t fsid_t;13+14+#endif15+16+/*17+ * This is ugly -- we're already 64-bit clean, so just duplicate the18+ * definitions.19+ */20+struct statfs {21+ long f_type;22+ long f_bsize;23+ long f_blocks;24+ long f_bfree;25+ long f_bavail;26+ long f_files;27+ long f_ffree;28+ __kernel_fsid_t f_fsid;29+ long f_namelen;30+ long f_frsize;31+ long f_spare[5];32+};33+34+struct statfs64 {35+ long f_type;36+ long f_bsize;37+ long f_blocks;38+ long f_bfree;39+ long f_bavail;40+ long f_files;41+ long f_ffree;42+ __kernel_fsid_t f_fsid;43+ long f_namelen;44+ long f_frsize;45+ long f_spare[5];46+};47+48+struct compat_statfs64 {49+ __u32 f_type;50+ __u32 f_bsize;51+ __u64 f_blocks;52+ __u64 f_bfree;53+ __u64 f_bavail;54+ __u64 f_files;55+ __u64 f_ffree;56+ __kernel_fsid_t f_fsid;57+ __u32 f_namelen;58+ __u32 f_frsize;59+ __u32 f_spare[5];60+} __attribute__((packed));61+62+#endif /* !__i386__ */63#endif
···1-#ifndef _X86_64_STATFS_H2-#define _X86_64_STATFS_H3-4-#ifndef __KERNEL_STRICT_NAMES5-6-#include <linux/types.h>7-8-typedef __kernel_fsid_t fsid_t;9-10-#endif11-12-/*13- * This is ugly -- we're already 64-bit clean, so just duplicate the 14- * definitions.15- */16-struct statfs {17- long f_type;18- long f_bsize;19- long f_blocks;20- long f_bfree;21- long f_bavail;22- long f_files;23- long f_ffree;24- __kernel_fsid_t f_fsid;25- long f_namelen;26- long f_frsize;27- long f_spare[5];28-};29-30-struct statfs64 {31- long f_type;32- long f_bsize;33- long f_blocks;34- long f_bfree;35- long f_bavail;36- long f_files;37- long f_ffree;38- __kernel_fsid_t f_fsid;39- long f_namelen;40- long f_frsize;41- long f_spare[5];42-};43-44-struct compat_statfs64 {45- __u32 f_type;46- __u32 f_bsize;47- __u64 f_blocks;48- __u64 f_bfree;49- __u64 f_bavail;50- __u64 f_files;51- __u64 f_ffree;52- __kernel_fsid_t f_fsid;53- __u32 f_namelen;54- __u32 f_frsize;55- __u32 f_spare[5];56-} __attribute__((packed));57-58-#endif