summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Layton <jlayton@kernel.org>2026-01-08 20:13:04 +0300
committerChristian Brauner <brauner@kernel.org>2026-01-12 12:55:46 +0300
commita9acc8422ffbaa018337a4bcb6fabbddb6b9e18c (patch)
treef15935f72d849dc89dccb8a312150aef8fa725f8
parent9e2ac6ddb397408a77781b0de8525068f51a81cd (diff)
downloadlinux-a9acc8422ffbaa018337a4bcb6fabbddb6b9e18c.tar.xz
fat: add setlease file operation
Add the setlease file_operation to fat_file_operations and fat_dir_operations, pointing to generic_setlease. 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 <jlayton@kernel.org> Link: https://patch.msgid.link/20260108-setlease-6-20-v1-9-ea4dec9b67fa@kernel.org Acked-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Acked-by: Al Viro <viro@zeniv.linux.org.uk> Acked-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Christian Brauner <brauner@kernel.org>
-rw-r--r--fs/fat/dir.c2
-rw-r--r--fs/fat/file.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/fs/fat/dir.c b/fs/fat/dir.c
index 92b091783966..807bc8b1bc14 100644
--- a/fs/fat/dir.c
+++ b/fs/fat/dir.c
@@ -16,6 +16,7 @@
#include <linux/slab.h>
#include <linux/compat.h>
+#include <linux/filelock.h>
#include <linux/uaccess.h>
#include <linux/iversion.h>
#include "fat.h"
@@ -876,6 +877,7 @@ const struct file_operations fat_dir_operations = {
.compat_ioctl = fat_compat_dir_ioctl,
#endif
.fsync = fat_file_fsync,
+ .setlease = generic_setlease,
};
static int fat_get_short_entry(struct inode *dir, loff_t *pos,
diff --git a/fs/fat/file.c b/fs/fat/file.c
index 4fc49a614fb8..d50a6d8bfaae 100644
--- a/fs/fat/file.c
+++ b/fs/fat/file.c
@@ -13,6 +13,7 @@
#include <linux/mount.h>
#include <linux/blkdev.h>
#include <linux/backing-dev.h>
+#include <linux/filelock.h>
#include <linux/fsnotify.h>
#include <linux/security.h>
#include <linux/falloc.h>
@@ -212,6 +213,7 @@ const struct file_operations fat_file_operations = {
.splice_read = filemap_splice_read,
.splice_write = iter_file_splice_write,
.fallocate = fat_fallocate,
+ .setlease = generic_setlease,
};
static int fat_cont_expand(struct inode *inode, loff_t size)