[PATCH 19/24] tmpfs: add setlease file operation
Jeff Layton <[email protected]>
| Newsgroups | dev.linux.lists.gfs2,dev.linux.lists.ntfs3,dev.linux.lists.ocfs2-devel,dev.linux.lists.v9fs,net.sourceforge.lists.linux-f2fs-devel,org.infradead.lists.linux-mtd,org.kernel.vger.ceph-devel,org.kernel.vger.linux-btrfs,org.kernel.vger.linux-cifs,org.kernel.vger.linux-doc,org.kernel.vger.linux-ext4,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-kernel,org.kernel.vger.linux-nfs,org.kernel.vger.linux-nilfs,org.kernel.vger.linux-unionfs,org.kernel.vger.linux-xfs,org.kvack.linux-mm,org.ozlabs.lists.linux-erofs |
|---|---|
| Message-ID | <[email protected]> |
Add the setlease file_operation pointing to generic_setlease to the tmpfs file_operations structures. A future patch will change the default behavior to reject lease attempts with -EINVAL when there is no setlease file operation defined. Add generic_setlease to retain the ability to set leases on this filesystem. Signed-off-by: Jeff Layton <[email protected]> --- fs/libfs.c | 2 ++ mm/shmem.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/fs/libfs.c b/fs/libfs.c index 591eb649ebbacf202ff48cd3abd64a175daa291c..697c6d5fc12786c036f0086886297fb5cd52ae00 100644 --- a/fs/libfs.c +++ b/fs/libfs.c @@ -6,6 +6,7 @@ #include <linux/blkdev.h> #include <linux/export.h> +#include <linux/filelock.h> #include <linux/pagemap.h> #include <linux/slab.h> #include <linux/cred.h> @@ -570,6 +571,7 @@ const struct file_operations simple_offset_dir_operations = { .iterate_shared = offset_readdir, .read = generic_read_dir, .fsync = noop_fsync, + .setlease = generic_setlease, }; struct dentry *find_next_child(struct dentry *parent, struct dentry *prev) diff --git a/mm/shmem.c b/mm/shmem.c index ec6c01378e9d2bd47db9d7506e4d6a565e092185..88ef1fd5cd38efedbb31353da2871ab1d47e68a5 100644 --- a/mm/shmem.c +++ b/mm/shmem.c @@ -29,6 +29,7 @@ #include <linux/pagemap.h> #include <linux/file.h> #include <linux/fileattr.h> +#include <linux/filelock.h> #include <linux/mm.h> #include <linux/random.h> #include <linux/sched/signal.h> @@ -5219,6 +5220,7 @@ static const struct file_operations shmem_file_operations = { .splice_read = shmem_file_splice_read, .splice_write = iter_file_splice_write, .fallocate = shmem_fallocate, + .setlease = generic_setlease, #endif }; -- 2.52.0