From: David Woodhouse Date: Mon, 13 Oct 2008 16:13:56 +0000 (+0100) Subject: Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 X-Git-Tag: v2.6.28-rc1~610^2 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=e758936e02700ff88a0b08b722a3847b95283ef2;p=linux-2.6-omap-h63xx.git Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 Conflicts: include/asm-x86/statfs.h --- e758936e02700ff88a0b08b722a3847b95283ef2 diff --cc include/asm-x86/statfs.h index 4c935caaef2,3f005bc3aa5..ca5dc19dd46 --- a/include/asm-x86/statfs.h +++ b/include/asm-x86/statfs.h @@@ -1,12 -1,63 +1,12 @@@ - #ifndef _ASM_X86_STATFS_H - #define _ASM_X86_STATFS_H + #ifndef ASM_X86__STATFS_H + #define ASM_X86__STATFS_H -#ifdef __i386__ -#include -#else - -#ifndef __KERNEL_STRICT_NAMES - -#include - -typedef __kernel_fsid_t fsid_t; - -#endif - /* - * This is ugly -- we're already 64-bit clean, so just duplicate the - * definitions. + * We need compat_statfs64 to be packed, because the i386 ABI won't + * add padding at the end to bring it to a multiple of 8 bytes, but + * the x86_64 ABI will. */ -struct statfs { - long f_type; - long f_bsize; - long f_blocks; - long f_bfree; - long f_bavail; - long f_files; - long f_ffree; - __kernel_fsid_t f_fsid; - long f_namelen; - long f_frsize; - long f_spare[5]; -}; - -struct statfs64 { - long f_type; - long f_bsize; - long f_blocks; - long f_bfree; - long f_bavail; - long f_files; - long f_ffree; - __kernel_fsid_t f_fsid; - long f_namelen; - long f_frsize; - long f_spare[5]; -}; +#define ARCH_PACK_COMPAT_STATFS64 __attribute__((packed,aligned(4))) -struct compat_statfs64 { - __u32 f_type; - __u32 f_bsize; - __u64 f_blocks; - __u64 f_bfree; - __u64 f_bavail; - __u64 f_files; - __u64 f_ffree; - __kernel_fsid_t f_fsid; - __u32 f_namelen; - __u32 f_frsize; - __u32 f_spare[5]; -} __attribute__((packed)); - -#endif /* !__i386__ */ +#include - #endif + #endif /* ASM_X86__STATFS_H */