diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-04 17:21:20 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-04 17:21:20 -0400 |
commit | f7789dc0d476e597b0fba52871e777f97d8e3f6e (patch) | |
tree | a2f77a68f4339c62ef3db227268db2dd56f83a64 /include/uapi | |
parent | 7df934526c0b3775613502dcd19ab6d2da8cce1e (diff) | |
parent | 29723adee11804b548903ddb1db666cf4a60f60e (diff) |
Merge branch 'locks-3.15' of git://git.samba.org/jlayton/linux
Pull file locking updates from Jeff Layton:
"Highlights:
- maintainership change for fs/locks.c. Willy's not interested in
maintaining it these days, and is OK with Bruce and I taking it.
- fix for open vs setlease race that Al ID'ed
- cleanup and consolidation of file locking code
- eliminate unneeded BUG() call
- merge of file-private lock implementation"
* 'locks-3.15' of git://git.samba.org/jlayton/linux:
locks: make locks_mandatory_area check for file-private locks
locks: fix locks_mandatory_locked to respect file-private locks
locks: require that flock->l_pid be set to 0 for file-private locks
locks: add new fcntl cmd values for handling file private locks
locks: skip deadlock detection on FL_FILE_PVT locks
locks: pass the cmd value to fcntl_getlk/getlk64
locks: report l_pid as -1 for FL_FILE_PVT locks
locks: make /proc/locks show IS_FILE_PVT locks as type "FLPVT"
locks: rename locks_remove_flock to locks_remove_file
locks: consolidate checks for compatible filp->f_mode values in setlk handlers
locks: fix posix lock range overflow handling
locks: eliminate BUG() call when there's an unexpected lock on file close
locks: add __acquires and __releases annotations to locks_start and locks_stop
locks: remove "inline" qualifier from fl_link manipulation functions
locks: clean up comment typo
locks: close potential race between setlease and open
MAINTAINERS: update entry for fs/locks.c
Diffstat (limited to 'include/uapi')
-rw-r--r-- | include/uapi/asm-generic/fcntl.h | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/include/uapi/asm-generic/fcntl.h b/include/uapi/asm-generic/fcntl.h index 95e46c8e05f9..a9b13f8b3595 100644 --- a/include/uapi/asm-generic/fcntl.h +++ b/include/uapi/asm-generic/fcntl.h | |||
@@ -132,6 +132,22 @@ | |||
132 | #define F_GETOWNER_UIDS 17 | 132 | #define F_GETOWNER_UIDS 17 |
133 | #endif | 133 | #endif |
134 | 134 | ||
135 | /* | ||
136 | * fd "private" POSIX locks. | ||
137 | * | ||
138 | * Usually POSIX locks held by a process are released on *any* close and are | ||
139 | * not inherited across a fork(). | ||
140 | * | ||
141 | * These cmd values will set locks that conflict with normal POSIX locks, but | ||
142 | * are "owned" by the opened file, not the process. This means that they are | ||
143 | * inherited across fork() like BSD (flock) locks, and they are only released | ||
144 | * automatically when the last reference to the the open file against which | ||
145 | * they were acquired is put. | ||
146 | */ | ||
147 | #define F_GETLKP 36 | ||
148 | #define F_SETLKP 37 | ||
149 | #define F_SETLKPW 38 | ||
150 | |||
135 | #define F_OWNER_TID 0 | 151 | #define F_OWNER_TID 0 |
136 | #define F_OWNER_PID 1 | 152 | #define F_OWNER_PID 1 |
137 | #define F_OWNER_PGRP 2 | 153 | #define F_OWNER_PGRP 2 |
@@ -186,8 +202,6 @@ struct flock { | |||
186 | }; | 202 | }; |
187 | #endif | 203 | #endif |
188 | 204 | ||
189 | #ifndef CONFIG_64BIT | ||
190 | |||
191 | #ifndef HAVE_ARCH_STRUCT_FLOCK64 | 205 | #ifndef HAVE_ARCH_STRUCT_FLOCK64 |
192 | #ifndef __ARCH_FLOCK64_PAD | 206 | #ifndef __ARCH_FLOCK64_PAD |
193 | #define __ARCH_FLOCK64_PAD | 207 | #define __ARCH_FLOCK64_PAD |
@@ -202,6 +216,5 @@ struct flock64 { | |||
202 | __ARCH_FLOCK64_PAD | 216 | __ARCH_FLOCK64_PAD |
203 | }; | 217 | }; |
204 | #endif | 218 | #endif |
205 | #endif /* !CONFIG_64BIT */ | ||
206 | 219 | ||
207 | #endif /* _ASM_GENERIC_FCNTL_H */ | 220 | #endif /* _ASM_GENERIC_FCNTL_H */ |