| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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 | * | 
| Ralf Baechle | b4f8c42 | 2005-10-29 19:32:40 +0100 | [diff] [blame] | 6 | * Copyright (C) 1995, 96, 97, 98, 99, 2003, 05 Ralf Baechle | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 7 | */ | 
|  | 8 | #ifndef _ASM_FCNTL_H | 
|  | 9 | #define _ASM_FCNTL_H | 
|  | 10 |  | 
| Ralf Baechle | b4f8c42 | 2005-10-29 19:32:40 +0100 | [diff] [blame] | 11 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 12 | #define O_APPEND	0x0008 | 
|  | 13 | #define O_SYNC		0x0010 | 
|  | 14 | #define O_NONBLOCK	0x0080 | 
|  | 15 | #define O_CREAT         0x0100	/* not fcntl */ | 
| Ralf Baechle | ca074a3 | 2007-09-30 00:45:08 +0100 | [diff] [blame] | 16 | #define O_TRUNC		0x0200	/* not fcntl */ | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 17 | #define O_EXCL		0x0400	/* not fcntl */ | 
|  | 18 | #define O_NOCTTY	0x0800	/* not fcntl */ | 
|  | 19 | #define FASYNC		0x1000	/* fcntl, for BSD compatibility */ | 
|  | 20 | #define O_LARGEFILE	0x2000	/* allow large file opens */ | 
|  | 21 | #define O_DIRECT	0x8000	/* direct disk access hint */ | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 22 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 23 | #define F_GETLK		14 | 
|  | 24 | #define F_SETLK		6 | 
|  | 25 | #define F_SETLKW	7 | 
|  | 26 |  | 
|  | 27 | #define F_SETOWN	24	/*  for sockets. */ | 
|  | 28 | #define F_GETOWN	23	/*  for sockets. */ | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 29 |  | 
|  | 30 | #ifndef __mips64 | 
|  | 31 | #define F_GETLK64	33	/*  using 'struct flock64' */ | 
|  | 32 | #define F_SETLK64	34 | 
|  | 33 | #define F_SETLKW64	35 | 
|  | 34 | #endif | 
|  | 35 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 36 | /* | 
|  | 37 | * The flavours of struct flock.  "struct flock" is the ABI compliant | 
|  | 38 | * variant.  Finally struct flock64 is the LFS variant of struct flock.  As | 
|  | 39 | * a historic accident and inconsistence with the ABI definition it doesn't | 
|  | 40 | * contain all the same fields as struct flock. | 
|  | 41 | */ | 
|  | 42 |  | 
| Ralf Baechle | b4f8c42 | 2005-10-29 19:32:40 +0100 | [diff] [blame] | 43 | #ifdef CONFIG_32BIT | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 44 |  | 
| Stephen Rothwell | 9317259 | 2005-09-06 15:17:57 -0700 | [diff] [blame] | 45 | struct flock { | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 46 | short	l_type; | 
|  | 47 | short	l_whence; | 
| Ralf Baechle | b4f8c42 | 2005-10-29 19:32:40 +0100 | [diff] [blame] | 48 | off_t	l_start; | 
|  | 49 | off_t	l_len; | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 50 | long	l_sysid; | 
|  | 51 | __kernel_pid_t l_pid; | 
|  | 52 | long	pad[4]; | 
| Stephen Rothwell | 5ac353f | 2005-09-06 15:18:00 -0700 | [diff] [blame] | 53 | }; | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 54 |  | 
| Stephen Rothwell | 5ac353f | 2005-09-06 15:18:00 -0700 | [diff] [blame] | 55 | #define HAVE_ARCH_STRUCT_FLOCK | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 56 |  | 
| Ralf Baechle | b4f8c42 | 2005-10-29 19:32:40 +0100 | [diff] [blame] | 57 | #endif /* CONFIG_32BIT */ | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 58 |  | 
| Stephen Rothwell | 9317259 | 2005-09-06 15:17:57 -0700 | [diff] [blame] | 59 | #include <asm-generic/fcntl.h> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 60 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 61 | #endif /* _ASM_FCNTL_H */ |