locks: remove lock_may_read and lock_may_write
authorJeff Layton <jlayton@primarydata.com>
Fri, 22 Aug 2014 14:18:44 +0000 (10:18 -0400)
committerJeff Layton <jlayton@primarydata.com>
Tue, 9 Sep 2014 20:01:09 +0000 (16:01 -0400)
There are no callers of these functions.

Signed-off-by: Jeff Layton <jlayton@primarydata.com>
fs/locks.c
include/linux/fs.h

index c3991dc..5200ffd 100644 (file)
@@ -2597,86 +2597,6 @@ static int __init proc_locks_init(void)
 module_init(proc_locks_init);
 #endif
 
-/**
- *     lock_may_read - checks that the region is free of locks
- *     @inode: the inode that is being read
- *     @start: the first byte to read
- *     @len: the number of bytes to read
- *
- *     Emulates Windows locking requirements.  Whole-file
- *     mandatory locks (share modes) can prohibit a read and
- *     byte-range POSIX locks can prohibit a read if they overlap.
- *
- *     N.B. this function is only ever called
- *     from knfsd and ownership of locks is never checked.
- */
-int lock_may_read(struct inode *inode, loff_t start, unsigned long len)
-{
-       struct file_lock *fl;
-       int result = 1;
-
-       spin_lock(&inode->i_lock);
-       for (fl = inode->i_flock; fl != NULL; fl = fl->fl_next) {
-               if (IS_POSIX(fl)) {
-                       if (fl->fl_type == F_RDLCK)
-                               continue;
-                       if ((fl->fl_end < start) || (fl->fl_start > (start + len)))
-                               continue;
-               } else if (IS_FLOCK(fl)) {
-                       if (!(fl->fl_type & LOCK_MAND))
-                               continue;
-                       if (fl->fl_type & LOCK_READ)
-                               continue;
-               } else
-                       continue;
-               result = 0;
-               break;
-       }
-       spin_unlock(&inode->i_lock);
-       return result;
-}
-
-EXPORT_SYMBOL(lock_may_read);
-
-/**
- *     lock_may_write - checks that the region is free of locks
- *     @inode: the inode that is being written
- *     @start: the first byte to write
- *     @len: the number of bytes to write
- *
- *     Emulates Windows locking requirements.  Whole-file
- *     mandatory locks (share modes) can prohibit a write and
- *     byte-range POSIX locks can prohibit a write if they overlap.
- *
- *     N.B. this function is only ever called
- *     from knfsd and ownership of locks is never checked.
- */
-int lock_may_write(struct inode *inode, loff_t start, unsigned long len)
-{
-       struct file_lock *fl;
-       int result = 1;
-
-       spin_lock(&inode->i_lock);
-       for (fl = inode->i_flock; fl != NULL; fl = fl->fl_next) {
-               if (IS_POSIX(fl)) {
-                       if ((fl->fl_end < start) || (fl->fl_start > (start + len)))
-                               continue;
-               } else if (IS_FLOCK(fl)) {
-                       if (!(fl->fl_type & LOCK_MAND))
-                               continue;
-                       if (fl->fl_type & LOCK_WRITE)
-                               continue;
-               } else
-                       continue;
-               result = 0;
-               break;
-       }
-       spin_unlock(&inode->i_lock);
-       return result;
-}
-
-EXPORT_SYMBOL(lock_may_write);
-
 static int __init filelock_init(void)
 {
        int i;
index 3b07ce2..458f733 100644 (file)
@@ -985,8 +985,6 @@ extern void lease_get_mtime(struct inode *, struct timespec *time);
 extern int generic_setlease(struct file *, long, struct file_lock **);
 extern int vfs_setlease(struct file *, long, struct file_lock **);
 extern int lease_modify(struct file_lock **, int);
-extern int lock_may_read(struct inode *, loff_t start, unsigned long count);
-extern int lock_may_write(struct inode *, loff_t start, unsigned long count);
 #else /* !CONFIG_FILE_LOCKING */
 static inline int fcntl_getlk(struct file *file, unsigned int cmd,
                              struct flock __user *user)
@@ -1117,18 +1115,6 @@ static inline int lease_modify(struct file_lock **before, int arg)
 {
        return -EINVAL;
 }
-
-static inline int lock_may_read(struct inode *inode, loff_t start,
-                               unsigned long len)
-{
-       return 1;
-}
-
-static inline int lock_may_write(struct inode *inode, loff_t start,
-                                unsigned long len)
-{
-       return 1;
-}
 #endif /* !CONFIG_FILE_LOCKING */