diff --git a/include/asm-arm/fcntl.h b/include/asm-arm/fcntl.h index 1816a6ac6f1..a80b6607b2e 100644 --- a/include/asm-arm/fcntl.h +++ b/include/asm-arm/fcntl.h @@ -6,18 +6,6 @@ #define O_DIRECT 0200000 /* direct disk access hint - currently ignored */ #define O_LARGEFILE 0400000 -#define F_GETLK64 12 /* using 'struct flock64' */ -#define F_SETLK64 13 -#define F_SETLKW64 14 - -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -}; - #include #endif diff --git a/include/asm-arm26/fcntl.h b/include/asm-arm26/fcntl.h index b88f8d08c60..d85995e7459 100644 --- a/include/asm-arm26/fcntl.h +++ b/include/asm-arm26/fcntl.h @@ -8,18 +8,6 @@ #define O_DIRECT 0200000 /* direct disk access hint - currently ignored */ #define O_LARGEFILE 0400000 -#define F_GETLK64 12 /* using 'struct flock64' */ -#define F_SETLK64 13 -#define F_SETLKW64 14 - -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -}; - #include #endif diff --git a/include/asm-cris/fcntl.h b/include/asm-cris/fcntl.h index f8e7d1307eb..46ab12db573 100644 --- a/include/asm-cris/fcntl.h +++ b/include/asm-cris/fcntl.h @@ -1,18 +1 @@ -#ifndef _CRIS_FCNTL_H -#define _CRIS_FCNTL_H - -#define F_GETLK64 12 /* using 'struct flock64' */ -#define F_SETLK64 13 -#define F_SETLKW64 14 - -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -}; - #include - -#endif diff --git a/include/asm-frv/fcntl.h b/include/asm-frv/fcntl.h index 0b212d945ad..46ab12db573 100644 --- a/include/asm-frv/fcntl.h +++ b/include/asm-frv/fcntl.h @@ -1,19 +1 @@ -#ifndef _ASM_FCNTL_H -#define _ASM_FCNTL_H - -#define F_GETLK64 12 /* using 'struct flock64' */ -#define F_SETLK64 13 -#define F_SETLKW64 14 - -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -}; - #include - -#endif /* _ASM_FCNTL_H */ - diff --git a/include/asm-generic/fcntl.h b/include/asm-generic/fcntl.h index b001d7fe038..b663520dcdc 100644 --- a/include/asm-generic/fcntl.h +++ b/include/asm-generic/fcntl.h @@ -1,6 +1,7 @@ #ifndef _ASM_GENERIC_FCNTL_H #define _ASM_GENERIC_FCNTL_H +#include #include /* open/fcntl - O_SYNC is only implemented on blocks devices and on files @@ -121,4 +122,28 @@ struct flock { }; #endif +#ifndef CONFIG_64BIT + +#ifndef F_GETLK64 +#define F_GETLK64 12 /* using 'struct flock64' */ +#define F_SETLK64 13 +#define F_SETLKW64 14 +#endif + +#ifndef HAVE_ARCH_STRUCT_FLOCK64 +#ifndef __ARCH_FLOCK64_PAD +#define __ARCH_FLOCK64_PAD +#endif + +struct flock64 { + short l_type; + short l_whence; + loff_t l_start; + loff_t l_len; + pid_t l_pid; + __ARCH_FLOCK64_PAD +}; +#endif +#endif /* !CONFIG_64BIT */ + #endif /* _ASM_GENERIC_FCNTL_H */ diff --git a/include/asm-h8300/fcntl.h b/include/asm-h8300/fcntl.h index 8caeb05e84d..1952cb2e3b0 100644 --- a/include/asm-h8300/fcntl.h +++ b/include/asm-h8300/fcntl.h @@ -6,18 +6,6 @@ #define O_DIRECT 0200000 /* direct disk access hint - currently ignored */ #define O_LARGEFILE 0400000 -#define F_GETLK64 12 /* using 'struct flock64' */ -#define F_SETLK64 13 -#define F_SETLKW64 14 - -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -}; - #include #endif /* _H8300_FCNTL_H */ diff --git a/include/asm-i386/fcntl.h b/include/asm-i386/fcntl.h index 01f17d29d28..46ab12db573 100644 --- a/include/asm-i386/fcntl.h +++ b/include/asm-i386/fcntl.h @@ -1,18 +1 @@ -#ifndef _I386_FCNTL_H -#define _I386_FCNTL_H - -#define F_GETLK64 12 /* using 'struct flock64' */ -#define F_SETLK64 13 -#define F_SETLKW64 14 - -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -}; - #include - -#endif diff --git a/include/asm-m32r/fcntl.h b/include/asm-m32r/fcntl.h index 90f71735fa9..46ab12db573 100644 --- a/include/asm-m32r/fcntl.h +++ b/include/asm-m32r/fcntl.h @@ -1,18 +1 @@ -#ifndef _ASM_M32R_FCNTL_H -#define _ASM_M32R_FCNTL_H - -#define F_GETLK64 12 /* using 'struct flock64' */ -#define F_SETLK64 13 -#define F_SETLKW64 14 - -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -}; - #include - -#endif /* _ASM_M32R_FCNTL_H */ diff --git a/include/asm-m68k/fcntl.h b/include/asm-m68k/fcntl.h index d3b24e3fbac..1c369b20dc4 100644 --- a/include/asm-m68k/fcntl.h +++ b/include/asm-m68k/fcntl.h @@ -6,18 +6,6 @@ #define O_DIRECT 0200000 /* direct disk access hint - currently ignored */ #define O_LARGEFILE 0400000 -#define F_GETLK64 12 /* using 'struct flock64' */ -#define F_SETLK64 13 -#define F_SETLKW64 14 - -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -}; - #include #endif /* _M68K_FCNTL_H */ diff --git a/include/asm-mips/fcntl.h b/include/asm-mips/fcntl.h index fb824bf0929..06c5d13faf6 100644 --- a/include/asm-mips/fcntl.h +++ b/include/asm-mips/fcntl.h @@ -52,15 +52,6 @@ struct flock { long pad[4]; }; -typedef struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -} flock64_t; - - #define HAVE_ARCH_STRUCT_FLOCK #endif @@ -68,5 +59,8 @@ typedef struct flock64 { #include typedef struct flock flock_t; +#ifndef __mips64 +typedef struct flock64 flock64_t; +#endif #endif /* _ASM_FCNTL_H */ diff --git a/include/asm-parisc/fcntl.h b/include/asm-parisc/fcntl.h index eadda003c20..317851fa78f 100644 --- a/include/asm-parisc/fcntl.h +++ b/include/asm-parisc/fcntl.h @@ -33,14 +33,6 @@ #define F_WRLCK 02 #define F_UNLCK 03 -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -}; - #include #endif diff --git a/include/asm-ppc/fcntl.h b/include/asm-ppc/fcntl.h index 4480f21bfde..7ef37443cc5 100644 --- a/include/asm-ppc/fcntl.h +++ b/include/asm-ppc/fcntl.h @@ -6,20 +6,6 @@ #define O_LARGEFILE 0200000 #define O_DIRECT 0400000 /* direct disk access hint */ -#ifndef __powerpc64__ -#define F_GETLK64 12 /* using 'struct flock64' */ -#define F_SETLK64 13 -#define F_SETLKW64 14 - -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -}; -#endif - #include #endif /* _PPC_FCNTL_H */ diff --git a/include/asm-s390/fcntl.h b/include/asm-s390/fcntl.h index 3a66fba09ee..46ab12db573 100644 --- a/include/asm-s390/fcntl.h +++ b/include/asm-s390/fcntl.h @@ -1,27 +1 @@ -/* - * include/asm-s390/fcntl.h - * - * S390 version - * - * Derived from "include/asm-i386/fcntl.h" - */ -#ifndef _S390_FCNTL_H -#define _S390_FCNTL_H - -#ifndef __s390x__ -#define F_GETLK64 12 /* using 'struct flock64' */ -#define F_SETLK64 13 -#define F_SETLKW64 14 - -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -}; -#endif - #include - -#endif diff --git a/include/asm-sh/fcntl.h b/include/asm-sh/fcntl.h index c481bab8ba1..46ab12db573 100644 --- a/include/asm-sh/fcntl.h +++ b/include/asm-sh/fcntl.h @@ -1,19 +1 @@ -#ifndef __ASM_SH_FCNTL_H -#define __ASM_SH_FCNTL_H - -#define F_GETLK64 12 /* using 'struct flock64' */ -#define F_SETLK64 13 -#define F_SETLKW64 14 - -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -}; - #include - -#endif /* __ASM_SH_FCNTL_H */ - diff --git a/include/asm-sh64/fcntl.h b/include/asm-sh64/fcntl.h index ffcc36c64fa..744dd79b9d5 100644 --- a/include/asm-sh64/fcntl.h +++ b/include/asm-sh64/fcntl.h @@ -1,7 +1 @@ -#ifndef __ASM_SH64_FCNTL_H -#define __ASM_SH64_FCNTL_H - #include - -#endif /* __ASM_SH64_FCNTL_H */ - diff --git a/include/asm-sparc/fcntl.h b/include/asm-sparc/fcntl.h index 634557374e9..5db60b5ae7b 100644 --- a/include/asm-sparc/fcntl.h +++ b/include/asm-sparc/fcntl.h @@ -23,25 +23,13 @@ #define F_SETLK 8 #define F_SETLKW 9 -#define F_GETLK64 12 /* using 'struct flock64' */ -#define F_SETLK64 13 -#define F_SETLKW64 14 - /* for posix fcntl() and lockf() */ #define F_RDLCK 1 #define F_WRLCK 2 #define F_UNLCK 3 -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; - short __unused; -}; - #define __ARCH_FLOCK_PAD short __unused; +#define __ARCH_FLOCK64_PAD short __unused; #include diff --git a/include/asm-v850/fcntl.h b/include/asm-v850/fcntl.h index 0fd47f0c6a8..3af4d56776d 100644 --- a/include/asm-v850/fcntl.h +++ b/include/asm-v850/fcntl.h @@ -6,18 +6,6 @@ #define O_DIRECT 0200000 /* direct disk access hint - currently ignored */ #define O_LARGEFILE 0400000 -#define F_GETLK64 12 /* using 'struct flock64' */ -#define F_SETLK64 13 -#define F_SETLKW64 14 - -struct flock64 { - short l_type; - short l_whence; - loff_t l_start; - loff_t l_len; - pid_t l_pid; -}; - #include #endif /* __V850_FCNTL_H__ */ diff --git a/include/asm-xtensa/fcntl.h b/include/asm-xtensa/fcntl.h index fdae0e17058..ec066ae96ca 100644 --- a/include/asm-xtensa/fcntl.h +++ b/include/asm-xtensa/fcntl.h @@ -54,6 +54,7 @@ struct flock64 { }; #define HAVE_ARCH_STRUCT_FLOCK +#define HAVE_ARCH_STRUCT_FLOCK64 #include