Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

fs: remove simple_nosetlease()

Setting ->setlease() to a NULL pointer now has the same effect as
setting it to simple_nosetlease(). Remove all of the setlease
file_operations that are set to simple_nosetlease, and the function
itself.

Signed-off-by: Jeff Layton <jlayton@kernel.org>
Link: https://patch.msgid.link/20260108-setlease-6-20-v1-24-ea4dec9b67fa@kernel.org
Acked-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Christian Brauner <brauner@kernel.org>

authored by

Jeff Layton and committed by
Christian Brauner
51e49111 2b10994b

-34
-2
fs/9p/vfs_dir.c
··· 242 242 .iterate_shared = v9fs_dir_readdir, 243 243 .open = v9fs_file_open, 244 244 .release = v9fs_dir_release, 245 - .setlease = simple_nosetlease, 246 245 }; 247 246 248 247 const struct file_operations v9fs_dir_operations_dotl = { ··· 251 252 .open = v9fs_file_open, 252 253 .release = v9fs_dir_release, 253 254 .fsync = v9fs_file_fsync_dotl, 254 - .setlease = simple_nosetlease, 255 255 };
-2
fs/9p/vfs_file.c
··· 517 517 .splice_read = v9fs_file_splice_read, 518 518 .splice_write = iter_file_splice_write, 519 519 .fsync = v9fs_file_fsync, 520 - .setlease = simple_nosetlease, 521 520 }; 522 521 523 522 const struct file_operations v9fs_file_operations_dotl = { ··· 531 532 .splice_read = v9fs_file_splice_read, 532 533 .splice_write = iter_file_splice_write, 533 534 .fsync = v9fs_file_fsync_dotl, 534 - .setlease = simple_nosetlease, 535 535 };
-2
fs/ceph/dir.c
··· 2214 2214 .fsync = ceph_fsync, 2215 2215 .lock = ceph_lock, 2216 2216 .flock = ceph_flock, 2217 - .setlease = simple_nosetlease, 2218 2217 }; 2219 2218 2220 2219 const struct file_operations ceph_snapdir_fops = { ··· 2221 2222 .llseek = ceph_dir_llseek, 2222 2223 .open = ceph_open, 2223 2224 .release = ceph_release, 2224 - .setlease = simple_nosetlease, 2225 2225 }; 2226 2226 2227 2227 const struct inode_operations ceph_dir_iops = {
-1
fs/ceph/file.c
··· 3169 3169 .mmap_prepare = ceph_mmap_prepare, 3170 3170 .fsync = ceph_fsync, 3171 3171 .lock = ceph_lock, 3172 - .setlease = simple_nosetlease, 3173 3172 .flock = ceph_flock, 3174 3173 .splice_read = ceph_splice_read, 3175 3174 .splice_write = iter_file_splice_write,
-1
fs/fuse/dir.c
··· 2430 2430 .fsync = fuse_dir_fsync, 2431 2431 .unlocked_ioctl = fuse_dir_ioctl, 2432 2432 .compat_ioctl = fuse_dir_compat_ioctl, 2433 - .setlease = simple_nosetlease, 2434 2433 }; 2435 2434 2436 2435 static const struct inode_operations fuse_common_inode_operations = {
-2
fs/gfs2/file.c
··· 1593 1593 .flock = gfs2_flock, 1594 1594 .splice_read = copy_splice_read, 1595 1595 .splice_write = gfs2_file_splice_write, 1596 - .setlease = simple_nosetlease, 1597 1596 .fallocate = gfs2_fallocate, 1598 1597 .fop_flags = FOP_ASYNC_LOCK, 1599 1598 }; ··· 1607 1608 .lock = gfs2_lock, 1608 1609 .flock = gfs2_flock, 1609 1610 .llseek = default_llseek, 1610 - .setlease = simple_nosetlease, 1611 1611 .fop_flags = FOP_ASYNC_LOCK, 1612 1612 }; 1613 1613
-18
fs/libfs.c
··· 1700 1700 EXPORT_SYMBOL(alloc_anon_inode); 1701 1701 1702 1702 /** 1703 - * simple_nosetlease - generic helper for prohibiting leases 1704 - * @filp: file pointer 1705 - * @arg: type of lease to obtain 1706 - * @flp: new lease supplied for insertion 1707 - * @priv: private data for lm_setup operation 1708 - * 1709 - * Generic helper for filesystems that do not wish to allow leases to be set. 1710 - * All arguments are ignored and it just returns -EINVAL. 1711 - */ 1712 - int 1713 - simple_nosetlease(struct file *filp, int arg, struct file_lease **flp, 1714 - void **priv) 1715 - { 1716 - return -EINVAL; 1717 - } 1718 - EXPORT_SYMBOL(simple_nosetlease); 1719 - 1720 - /** 1721 1703 * simple_get_link - generic helper to get the target of "fast" symlinks 1722 1704 * @dentry: not used here 1723 1705 * @inode: the symlink inode
-1
fs/nfs/dir.c
··· 66 66 .open = nfs_opendir, 67 67 .release = nfs_closedir, 68 68 .fsync = nfs_fsync_dir, 69 - .setlease = simple_nosetlease, 70 69 }; 71 70 72 71 const struct address_space_operations nfs_dir_aops = {
-1
fs/nfs/file.c
··· 962 962 .splice_read = nfs_file_splice_read, 963 963 .splice_write = iter_file_splice_write, 964 964 .check_flags = nfs_check_flags, 965 - .setlease = simple_nosetlease, 966 965 .fop_flags = FOP_DONTCACHE, 967 966 }; 968 967 EXPORT_SYMBOL_GPL(nfs_file_operations);
-1
fs/smb/client/cifsfs.c
··· 1709 1709 .remap_file_range = cifs_remap_file_range, 1710 1710 .llseek = generic_file_llseek, 1711 1711 .fsync = cifs_dir_fsync, 1712 - .setlease = simple_nosetlease, 1713 1712 }; 1714 1713 1715 1714 static void
-1
fs/vboxsf/dir.c
··· 186 186 .release = vboxsf_dir_release, 187 187 .read = generic_read_dir, 188 188 .llseek = generic_file_llseek, 189 - .setlease = simple_nosetlease, 190 189 }; 191 190 192 191 /*
-1
fs/vboxsf/file.c
··· 218 218 .release = vboxsf_file_release, 219 219 .fsync = noop_fsync, 220 220 .splice_read = filemap_splice_read, 221 - .setlease = simple_nosetlease, 222 221 }; 223 222 224 223 const struct inode_operations vboxsf_reg_iops = {
-1
include/linux/fs.h
··· 3217 3217 extern struct inode *alloc_anon_inode(struct super_block *); 3218 3218 struct inode *anon_inode_make_secure_inode(struct super_block *sb, const char *name, 3219 3219 const struct inode *context_inode); 3220 - extern int simple_nosetlease(struct file *, int, struct file_lease **, void **); 3221 3220 3222 3221 extern struct dentry *simple_lookup(struct inode *, struct dentry *, unsigned int flags); 3223 3222 extern ssize_t generic_read_dir(struct file *, char __user *, size_t, loff_t *);