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
This commit is contained in:
@@ -132,6 +132,22 @@
|
||||
#define F_GETOWNER_UIDS 17
|
||||
#endif
|
||||
|
||||
/*
|
||||
* fd "private" POSIX locks.
|
||||
*
|
||||
* Usually POSIX locks held by a process are released on *any* close and are
|
||||
* not inherited across a fork().
|
||||
*
|
||||
* These cmd values will set locks that conflict with normal POSIX locks, but
|
||||
* are "owned" by the opened file, not the process. This means that they are
|
||||
* inherited across fork() like BSD (flock) locks, and they are only released
|
||||
* automatically when the last reference to the the open file against which
|
||||
* they were acquired is put.
|
||||
*/
|
||||
#define F_GETLKP 36
|
||||
#define F_SETLKP 37
|
||||
#define F_SETLKPW 38
|
||||
|
||||
#define F_OWNER_TID 0
|
||||
#define F_OWNER_PID 1
|
||||
#define F_OWNER_PGRP 2
|
||||
@@ -186,8 +202,6 @@ struct flock {
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifndef CONFIG_64BIT
|
||||
|
||||
#ifndef HAVE_ARCH_STRUCT_FLOCK64
|
||||
#ifndef __ARCH_FLOCK64_PAD
|
||||
#define __ARCH_FLOCK64_PAD
|
||||
@@ -202,6 +216,5 @@ struct flock64 {
|
||||
__ARCH_FLOCK64_PAD
|
||||
};
|
||||
#endif
|
||||
#endif /* !CONFIG_64BIT */
|
||||
|
||||
#endif /* _ASM_GENERIC_FCNTL_H */
|
||||
|
||||
Reference in New Issue
Block a user