locks: inline posix_lock_file_wait and flock_lock_file_wait
They just call file_inode and then the corresponding *_inode_file_wait function. Just make them static inlines instead. Signed-off-by: Jeff Layton <jeff.layton@primarydata.com>
This commit is contained in:
parent
83bfff23e9
commit
ee296d7c57
2 changed files with 14 additions and 46 deletions
28
fs/locks.c
28
fs/locks.c
|
@ -1189,21 +1189,6 @@ int posix_lock_inode_wait(struct inode *inode, struct file_lock *fl)
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(posix_lock_inode_wait);
|
EXPORT_SYMBOL(posix_lock_inode_wait);
|
||||||
|
|
||||||
/**
|
|
||||||
* posix_lock_file_wait - Apply a POSIX-style lock to a file
|
|
||||||
* @filp: The file to apply the lock to
|
|
||||||
* @fl: The lock to be applied
|
|
||||||
*
|
|
||||||
* Add a POSIX style lock to a file.
|
|
||||||
* We merge adjacent & overlapping locks whenever possible.
|
|
||||||
* POSIX locks are sorted by owner task, then by starting address
|
|
||||||
*/
|
|
||||||
int posix_lock_file_wait(struct file *filp, struct file_lock *fl)
|
|
||||||
{
|
|
||||||
return posix_lock_inode_wait(file_inode(filp), fl);
|
|
||||||
}
|
|
||||||
EXPORT_SYMBOL(posix_lock_file_wait);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* locks_mandatory_locked - Check for an active lock
|
* locks_mandatory_locked - Check for an active lock
|
||||||
* @file: the file to check
|
* @file: the file to check
|
||||||
|
@ -1889,19 +1874,6 @@ int flock_lock_inode_wait(struct inode *inode, struct file_lock *fl)
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(flock_lock_inode_wait);
|
EXPORT_SYMBOL(flock_lock_inode_wait);
|
||||||
|
|
||||||
/**
|
|
||||||
* flock_lock_file_wait - Apply a FLOCK-style lock to a file
|
|
||||||
* @filp: The file to apply the lock to
|
|
||||||
* @fl: The lock to be applied
|
|
||||||
*
|
|
||||||
* Add a FLOCK style lock to a file.
|
|
||||||
*/
|
|
||||||
int flock_lock_file_wait(struct file *filp, struct file_lock *fl)
|
|
||||||
{
|
|
||||||
return flock_lock_inode_wait(file_inode(filp), fl);
|
|
||||||
}
|
|
||||||
EXPORT_SYMBOL(flock_lock_file_wait);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* sys_flock: - flock() system call.
|
* sys_flock: - flock() system call.
|
||||||
* @fd: the file descriptor to lock.
|
* @fd: the file descriptor to lock.
|
||||||
|
|
|
@ -1047,13 +1047,11 @@ extern void locks_release_private(struct file_lock *);
|
||||||
extern void posix_test_lock(struct file *, struct file_lock *);
|
extern void posix_test_lock(struct file *, struct file_lock *);
|
||||||
extern int posix_lock_file(struct file *, struct file_lock *, struct file_lock *);
|
extern int posix_lock_file(struct file *, struct file_lock *, struct file_lock *);
|
||||||
extern int posix_lock_inode_wait(struct inode *, struct file_lock *);
|
extern int posix_lock_inode_wait(struct inode *, struct file_lock *);
|
||||||
extern int posix_lock_file_wait(struct file *, struct file_lock *);
|
|
||||||
extern int posix_unblock_lock(struct file_lock *);
|
extern int posix_unblock_lock(struct file_lock *);
|
||||||
extern int vfs_test_lock(struct file *, struct file_lock *);
|
extern int vfs_test_lock(struct file *, struct file_lock *);
|
||||||
extern int vfs_lock_file(struct file *, unsigned int, struct file_lock *, struct file_lock *);
|
extern int vfs_lock_file(struct file *, unsigned int, struct file_lock *, struct file_lock *);
|
||||||
extern int vfs_cancel_lock(struct file *filp, struct file_lock *fl);
|
extern int vfs_cancel_lock(struct file *filp, struct file_lock *fl);
|
||||||
extern int flock_lock_inode_wait(struct inode *inode, struct file_lock *fl);
|
extern int flock_lock_inode_wait(struct inode *inode, struct file_lock *fl);
|
||||||
extern int flock_lock_file_wait(struct file *filp, struct file_lock *fl);
|
|
||||||
extern int __break_lease(struct inode *inode, unsigned int flags, unsigned int type);
|
extern int __break_lease(struct inode *inode, unsigned int flags, unsigned int type);
|
||||||
extern void lease_get_mtime(struct inode *, struct timespec *time);
|
extern void lease_get_mtime(struct inode *, struct timespec *time);
|
||||||
extern int generic_setlease(struct file *, long, struct file_lock **, void **priv);
|
extern int generic_setlease(struct file *, long, struct file_lock **, void **priv);
|
||||||
|
@ -1145,11 +1143,6 @@ static inline int posix_lock_inode_wait(struct inode *inode,
|
||||||
return -ENOLCK;
|
return -ENOLCK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline int posix_lock_file_wait(struct file *filp, struct file_lock *fl)
|
|
||||||
{
|
|
||||||
return -ENOLCK;
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline int posix_unblock_lock(struct file_lock *waiter)
|
static inline int posix_unblock_lock(struct file_lock *waiter)
|
||||||
{
|
{
|
||||||
return -ENOENT;
|
return -ENOENT;
|
||||||
|
@ -1177,12 +1170,6 @@ static inline int flock_lock_inode_wait(struct inode *inode,
|
||||||
return -ENOLCK;
|
return -ENOLCK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline int flock_lock_file_wait(struct file *filp,
|
|
||||||
struct file_lock *request)
|
|
||||||
{
|
|
||||||
return -ENOLCK;
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline int __break_lease(struct inode *inode, unsigned int mode, unsigned int type)
|
static inline int __break_lease(struct inode *inode, unsigned int mode, unsigned int type)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -1216,6 +1203,20 @@ static inline void show_fd_locks(struct seq_file *f,
|
||||||
struct file *filp, struct files_struct *files) {}
|
struct file *filp, struct files_struct *files) {}
|
||||||
#endif /* !CONFIG_FILE_LOCKING */
|
#endif /* !CONFIG_FILE_LOCKING */
|
||||||
|
|
||||||
|
static inline struct inode *file_inode(const struct file *f)
|
||||||
|
{
|
||||||
|
return f->f_inode;
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline int posix_lock_file_wait(struct file *filp, struct file_lock *fl)
|
||||||
|
{
|
||||||
|
return posix_lock_inode_wait(file_inode(filp), fl);
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline int flock_lock_file_wait(struct file *filp, struct file_lock *fl)
|
||||||
|
{
|
||||||
|
return flock_lock_inode_wait(file_inode(filp), fl);
|
||||||
|
}
|
||||||
|
|
||||||
struct fasync_struct {
|
struct fasync_struct {
|
||||||
spinlock_t fa_lock;
|
spinlock_t fa_lock;
|
||||||
|
@ -2025,11 +2026,6 @@ extern void ihold(struct inode * inode);
|
||||||
extern void iput(struct inode *);
|
extern void iput(struct inode *);
|
||||||
extern int generic_update_time(struct inode *, struct timespec *, int);
|
extern int generic_update_time(struct inode *, struct timespec *, int);
|
||||||
|
|
||||||
static inline struct inode *file_inode(const struct file *f)
|
|
||||||
{
|
|
||||||
return f->f_inode;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* /sys/fs */
|
/* /sys/fs */
|
||||||
extern struct kobject *fs_kobj;
|
extern struct kobject *fs_kobj;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue